Yii 1.1x在会话超时之前注销用户

时间:2016-11-10 13:17:36

标签: php session yii

我使用的是Yii 1.1.13,尽管会话超时设置为1天( php.ini 中为session.gc_maxlifetime = 86400),Yii会在约24分钟后退出用户。它甚至不会重定向到登录页面,只有当用户导航到另一个页面时。

我在登录功能中设置了这些:

    $duration = Yii::app()->getSession()->getTimeout();
    Yii::app()->user->login($this->_identity,$duration);

Yii::app()->getSession()->getTimeout()调用返回正确的时间,即 86400

我还将cookie生命周期设置为此值:

Yii::app()->request->cookies['PHPSESSID']->expire = Yii::app()->getSession()->getTimeout();

但错误仍然存​​在。

提前感谢您的帮助答案。

1 个答案:

答案 0 :(得分:0)

我需要在 main.php 中设置它:

'session' => array(
    'timeout' => 86400,
    'cookieParams' => array(
            'lifetime' => 86400,
    ),
)

它会使会话和cookie保持活跃,即使它们以某种方式被赋予较低的值。