cakephp cakeDC用户从登录重定向
我正在使用cakeDC的用户插件,在使用路由时遇到问题 当我转到my domain.com/login时,我会被重定向到my domain.com/users/login,并显示一条闪光消息“您无权访问该位置” Routes.phpcakephp 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
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'在此服务器上找不到。”所以我认为它不正确。当我注销时,问题是否与缓存有关?我已将此标记为正确,因为这是问题的直接答案。通过禁用缓存解决了之后的奇怪行为