Laravel 登录和注册:一段时间内自动登录
问题
如何实现用户在一周内自动登录,超过一周后就得再次输入密码重新登录呢?
答案
利用 Laravel 的会话机制可以实现此功能。你只需要修改会话相关配置:
config/session.php
.
.
.
// 单位分钟
'lifetime' => 60 * 24 * 7,
'expire_on_close' => false,
设置完以上后,只要确保不要使用 Laravel 的记住我 功能,即可实现 7 天内自动登录的功能。
注意
上面配置的 lifetime
选项不应配置过高的值。
因 Laravel 默认会给所有访问建立会话,设置过长时间,例如说两年,两年内所有用户访问,包括未登录的游客,都会产生会话数据。
如果刚好你的网站有不小的流量,很快系统资源就会被消耗完。这里的资源指的是 session.driver
设置的驱动,假如使用了 redis
作为会话驱动器,Redis 服务会在一段时间后提示内存不够用。
推荐文章: