Session 基于登录用户的Cakephp会话超时

Session 基于登录用户的Cakephp会话超时,session,cakephp,cakephp-2.6,cakephp-2.x,Session,Cakephp,Cakephp 2.6,Cakephp 2.x,我有不同的用户组,对于某些组,我需要给出不同的会话超时。这里有一个问题,但它不起作用 当放置此Configure::write('Session.timeout',1)时Auth->user('id'))之前,在AppController的beforeFilter中的code>{line,它工作正常,用户在1分钟不活动后正在注销,但是当我将该行置于if条件之后,我需要该条件来检查用户组-它不工作 蛋糕版本2.6 谢谢请确保在用户登录并更改会话设置后,会话已被销毁,例如: if ($this-&

我有不同的用户组,对于某些组,我需要给出不同的会话超时。这里有一个问题,但它不起作用

当放置此
Configure::write('Session.timeout',1)时Auth->user('id'))之前,在AppController的
beforeFilter
中的code>{
line,它工作正常,用户在1分钟不活动后正在注销,但是当我将该行置于
if
条件之后,我需要该条件来检查用户组-它不工作

蛋糕版本2.6


谢谢

请确保在用户登录并更改会话设置后,会话已被销毁,例如:

if ($this->Auth->user('id')) {
   Configure::write('Session.timeout', 3);
   $this->Session->destroy();
   $this->Session->write('userData', 'user data again');
}

$this->Session->destroy()之后的Configure::read('Session.timeout')是怎么说的?它输出1,但即使没有所有的Session destroy和write,如果我把
Configure::write('Session.timeout',1);
放在后面,然后选中
Configure::read('Session.timeout'))
始终为1,但cake忽略了它。感谢
Configure::write('Session',array('defaults'=>'php','cookie'=>'SESSIONID','ini'=>array('Session.cookie\u secure'=>true,'Session.cookie\u httponly'=>true)))
站点总是通过https提供服务,重定向是从apache vhosts文件执行的,也是从HTAccessJIC执行的。只是为了确保您正在运行以下命令:`if($this->Auth->user('id'){Configure::write('Session.timeout',3);$this->Session->destroy();$this->Session->write('userData',user data again debug')(Configure::read('Session.timeout');}`它显示“1”?让我们来看看。