我正在使用Yii2,我希望用户自动注销并在固定空闲秒后重定向到登录页面。
我已经尝试了
'components' => [
'user' => [
'identityClass' => 'app\models\User',
'enableAutoLogin' => true,
'authTimeout' => 60,
]
],
我该怎么办?
答案 0 :(得分:1)
您可以将JavaScript函数设置为每分钟运行一次,以便进行ajax调用并检查当前用户的会话是否已过期。然后,您可以使用JavaScript重定向:
window.location("example.com/login");
答案 1 :(得分:0)
您是否拥有登录用户'您&& 39;用户的财产? 见http://www.yiiframework.com/doc-2.0/yii-web-user.html
'用户' => [ ' loginUrl' = GT; ['位点/登录']]
您的控制器是否有针对需要经过身份验证的用户的操作的规则? 请参阅http://www.yiiframework.com/doc-2.0/guide-security-authorization.html
答案 2 :(得分:0)
请勿将enableAutoLogin
设为true
。使用以下配置:
...
'user' => [
'identityClass' => 'backend\models\Users',
'enableSession' => true,
'authTimeout' => 300,
],
....
// below is documentation from source code for authTimeout
/**
* @var integer the number of seconds in which the user will be logged out automatically if he
* remains inactive. If this property is not set, the user will be logged out after
* the current session expires (c.f. [[Session::timeout]]).
* Note that this will not work if [[enableAutoLogin]] is true.
*/