laravel在登录时如果开启了“记住我”则会在cookie里保存一个token值,在该cookie过期之前都可以保持登录状态,除非手动退出登录。而laravel默认的保持时间是400天,这对于项目平时使用还说就太长了,需要调整登录保持的时间。
/**
* The number of minutes that the "remember me" cookie should be valid for.
*
* @var int
*/
protected $rememberDuration = 576000;修改方法一:
编辑config/auth.php,找到 guards 增加remember配置:
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
'remember' => 60 * 24 * 3
]
]方法二:
在调用登录之前调用setRememberDuration方法修改保持时间:
// 原方法
Auth::login($user, true);
// 修改为
Auth::setRememberDuration(60 * 24 * 3)->login($user, true);这样在登录后cookie有效时间就已经更改了。