我遇到了cakephp中的auth组件,在ovh主机上。
当我登录时,没有设置会话变量: print_r($ this_session)只显示:
Array ( [Config] => Array ( [userAgent] => [time] => 1302122401 [timeout] => 10 ) )
这个问题的奇怪之处在于它有时会起作用......我过去常常从我的房子连接,而不是从我的工作。
这是我使用的代码。这很简单。 一个app_controller:
<?php
class AppController extends Controller {
var $components = array("Session","Auth");
function beforeFilter() {
$this->Auth->fields = array('username' => 'name', 'password' => 'password');
$this->Auth->loginAction = array('action' => 'login');
$this->Auth->loginRedirect = array('controller' => 'discs', 'action' => 'hello');
$this->Auth->logoutRedirect = '/';
$this->Auth->loginError = 'Invalid name / password combination. Please try again';
}
}
?>
在user_controller中:
function login() {
}
function logout() {
$this->redirect($this->Auth->logout());
}
我尝试修改会话配置: - 尝试php或蛋糕托管 - 尝试从低到中的安全级别 - 尝试更改会话cookie名称 - 尝试将checkAgent设置为false。
有什么想法吗?
答案 0 :(得分:0)
我不确定,但我猜你的代码已经正确了。
我注意到文件名'user_controller'。那是user_controller而不是users_controller吗? cakephp中的命名约定对于我们防止此类错误非常重要。最后,尝试删除$this->Auth->loginAction = array('action' => 'login');
。