cakephp cakeDC用户从登录重定向

cakephp cakeDC用户从登录重定向,cakephp,Cakephp,我正在使用cakeDC的用户插件,在使用路由时遇到问题 当我转到my domain.com/login时,我会被重定向到my domain.com/users/login,并显示一条闪光消息“您无权访问该位置” Routes.php CakePlugin::routes(); Router::connect('/users', array('plugin' => 'users', 'controller' => 'users')); Router::connect('/users/i

我正在使用cakeDC的用户插件,在使用路由时遇到问题

当我转到my domain.com/login时,我会被重定向到my domain.com/users/login,并显示一条闪光消息“您无权访问该位置”

Routes.php

CakePlugin::routes();
Router::connect('/users', array('plugin' => 'users', 'controller' => 'users'));
Router::connect('/users/index/*', array('plugin' => 'users', 'controller' => 'users'));
Router::connect('/users/:action/*', array('plugin' => 'users', 'controller' => 'users'));
Router::connect('/users/users/:action/*', array('plugin' => 'users', 'controller' => 'users'));
Router::connect('/login', array('plugin' => 'users', 'controller' => 'users', 'action' => 'login'));
Router::connect('/logout', array('plugin' => 'users', 'controller' => 'users', 'action' => 'logout'));
Router::connect('/register', array('plugin' => 'users', 'controller' => 'users', 'action' => 'add'));
AppController.php

function beforeFilter() {
    parent::beforeFilter();
    //$this->Auth->allow('index');
    $this->set('logged_in', $this->Auth->loggedIn());
    $this->set('current_user', $this->Auth->user());
    $this->Auth->fields = array('username' => 'username', 'password' => 'passwd');
    $this->Auth->loginAction = array('plugin' => 'users', 'controller' => 'users', 'action' => 'login', 'admin' => false);
    $this->Auth->loginRedirect = '/';
    $this->Auth->authError = __('Sorry, but you need to login to access this location.', true);
    $this->Auth->loginError = __('Invalid username / password combination.  Please try again', true);
    $this->Auth->autoRedirect = true;
    $this->Auth->userModel = 'User';
    $this->Auth->userScope = array('User.active' => 1);
    if ($this->Auth->user()) {
        $this->set('userData', $this->Auth->user());
    $this->set('isAuthorized', ($this->Auth->user('id') != ''));
    } 
}

下面的行不应包含在if语句中:

$this->Auth->allow('login');

看一看。这可能会对您有所帮助。

下面的行不应包含在if语句中:

$this->Auth->allow('login');

看一看。这可能会对您有所帮助。

下面的行不应包含在if语句中:

$this->Auth->allow('login');

看一看。这可能会对您有所帮助。

下面的行不应包含在if语句中:

$this->Auth->allow('login');

看一看。这可能会对您有所帮助。

我看到的这个问题是缓存中包含一些详细信息然后发生冲突的原因。我解决了这个问题

public function beforeRender() {
    $this->response->disableCache();
}

我所看到的这个问题是缓存保存一些细节然后冲突的原因。我解决了这个问题

public function beforeRender() {
    $this->response->disableCache();
}

我所看到的这个问题是缓存保存一些细节然后冲突的原因。我解决了这个问题

public function beforeRender() {
    $this->response->disableCache();
}

我所看到的这个问题是缓存保存一些细节然后冲突的原因。我解决了这个问题

public function beforeRender() {
    $this->response->disableCache();
}

是的,谢谢,那是个打字错误。我把它放在if声明之外。当我这样做的时候,我可以得到/login,但我确实登录了,我重定向到/users/login,并得到消息请求已被黑洞。那么,您的beforeFilter方法中是否有这一行?我看到你把它从if声明中删除了。现在它在哪里?为什么我添加了它,我可以第一次用/login登录,但之后当我登录时,我被重定向到/user/login,错误是“请求已被黑洞-错误:请求的地址'/btstadmin/users/login'在此服务器上找不到。”所以我认为它不正确。当我注销时,问题是否与缓存有关?我已将此标记为正确,因为这是问题的直接答案。之后的奇怪行为通过禁用缓存得以解决。谢谢,这是一个打字错误。我把它放在if声明之外。当我这样做的时候,我可以得到/login,但我确实登录了,我重定向到/users/login,并得到消息请求已被黑洞。那么,您的beforeFilter方法中是否有这一行?我看到你把它从if声明中删除了。现在它在哪里?为什么我添加了它,我可以第一次用/login登录,但之后当我登录时,我被重定向到/user/login,错误是“请求已被黑洞-错误:请求的地址'/btstadmin/users/login'在此服务器上找不到。”所以我认为它不正确。当我注销时,问题是否与缓存有关?我已将此标记为正确,因为这是问题的直接答案。之后的奇怪行为通过禁用缓存得以解决。谢谢,这是一个打字错误。我把它放在if声明之外。当我这样做的时候,我可以得到/login,但我确实登录了,我重定向到/users/login,并得到消息请求已被黑洞。那么,您的beforeFilter方法中是否有这一行?我看到你把它从if声明中删除了。现在它在哪里?为什么我添加了它,我可以第一次用/login登录,但之后当我登录时,我被重定向到/user/login,错误是“请求已被黑洞-错误:请求的地址'/btstadmin/users/login'在此服务器上找不到。”所以我认为它不正确。当我注销时,问题是否与缓存有关?我已将此标记为正确,因为这是问题的直接答案。之后的奇怪行为通过禁用缓存得以解决。谢谢,这是一个打字错误。我把它放在if声明之外。当我这样做的时候,我可以得到/login,但我确实登录了,我重定向到/users/login,并得到消息请求已被黑洞。那么,您的beforeFilter方法中是否有这一行?我看到你把它从if声明中删除了。现在它在哪里?为什么我添加了它,我可以第一次用/login登录,但之后当我登录时,我被重定向到/user/login,错误是“请求已被黑洞-错误:请求的地址'/btstadmin/users/login'在此服务器上找不到。”所以我认为它不正确。当我注销时,问题是否与缓存有关?我已将此标记为正确,因为这是问题的直接答案。通过禁用缓存解决了之后的奇怪行为