Yii2 如果15分钟内没有活动不工作,会话超时?

Yii2 如果15分钟内没有活动不工作,会话超时?,yii2,Yii2,我使用高级模板,我可以在15分钟内成功完成会话超时,但这并不取决于活动,所以即使用户在登录后在网站中处于活动状态,他也会在15分钟后注销 我知道应该在SiteController中设置触发器以增加超时,但不知道如何实现它 到目前为止,这是我的代码 backend\config\main.php 'user' => [ 'identityClass' => 'common\models\User', 'enableAutoLogin'

我使用高级模板,我可以在15分钟内成功完成会话超时,但这并不取决于活动,所以即使用户在登录后在网站中处于活动状态,他也会在15分钟后注销

我知道应该在SiteController中设置触发器以增加超时,但不知道如何实现它

到目前为止,这是我的代码

backend\config\main.php

  'user' => [
            'identityClass' => 'common\models\User',
            'enableAutoLogin' => false,
            'authTimeout' => 900
        ],
        'session' => [
            'class' => 'yii\web\Session',
            'cookieparams' => ['httponly' => true, 'lifetime' => 900],
            'timeout' => 900,
            'useCookies' => true,
        ],
'user' => [
            'identityClass' => 'common\models\UserCustomer',
            'enableAutoLogin' => false,
            //'enableSession' => true,
              'authTimeout' => 900,
        ],
        'session' => [
            'class' => 'yii\web\Session',
            'cookieparams' => ['httponly' => true, 'lifetime' => 900],
            'timeout' => 900,
            'useCookies' => true,
        ],
frontend\config\main.php

  'user' => [
            'identityClass' => 'common\models\User',
            'enableAutoLogin' => false,
            'authTimeout' => 900
        ],
        'session' => [
            'class' => 'yii\web\Session',
            'cookieparams' => ['httponly' => true, 'lifetime' => 900],
            'timeout' => 900,
            'useCookies' => true,
        ],
'user' => [
            'identityClass' => 'common\models\UserCustomer',
            'enableAutoLogin' => false,
            //'enableSession' => true,
              'authTimeout' => 900,
        ],
        'session' => [
            'class' => 'yii\web\Session',
            'cookieparams' => ['httponly' => true, 'lifetime' => 900],
            'timeout' => 900,
            'useCookies' => true,
        ],
我现在该怎么办?因此,如果15分钟内没有活动,我可以实现会话超时


提前感谢。

我相信您的问题不同,有比在控制器中放置触发器更好的解决方案。 很可能您没有为设置持续时间。搜索登录用户的行。可能是这样的:

Yii::$app->user->login($this->getUser());
改为

Yii::$app->user->login($this->getUser(), 900);

这可能不起作用还有几个原因,但这是最明显的。

已经在每个控制器上实现了触发器,也许您的解决方案是下一次更新。无论如何,非常感谢。