我使用此配置来管理用户的登录持续时间
'user' => [
'identityClass' => 'app\models\User',
'enableAutoLogin' => true,
'enableSession' => true,
'authTimeout' => 3600*24*120,
'loginUrl' => ['user/login']
//'class' => 'app\components\User',
],
'session' => [
'class' => 'yii\web\Session',
'timeout' => 3600*24*120,
'useCookies' => true,
],
,并在登录时间内通过以下方式设置登录时间:
Yii::$app->user->login($this->getUser(), 3600*24*120);
这是getUser():
private $_user = false;
public function getUser()
{
if ($this->_user === false) {
$this->_user = User::find()
->where(['mobile' => trim($this->mobile)])
->andWhere(['not',['status' => User::STATUS['SUSPEND']]])
->one();
}
return $this->_user;
}
这些代码在local中可以正常工作,但是在服务器中不起作用。 我被迫在php.ini中手动更改目标的session.gc_maxlifetime值。工作
问题:为什么不更改php.ini就不能在服务器中使用这些配置?问题出在哪里?