【发布时间】:2018-07-29 06:57:50
【问题描述】:
我们可以在 Laravel 中为每个会话设置过期时间吗?
如果我们可以通过我们创建的每个会话从控制器中实现它? 谢谢。
【问题讨论】:
-
您创建的每个会话是什么意思??
我们可以在 Laravel 中为每个会话设置过期时间吗?
如果我们可以通过我们创建的每个会话从控制器中实现它? 谢谢。
【问题讨论】:
您可以通过更改config/session.php 上的lifetime 值来更改应用程序范围内的会话生命周期:
/*
|--------------------------------------------------------------------------
| Session Lifetime
|--------------------------------------------------------------------------
|
| Here you may specify the number of minutes that you wish the session
| to be allowed to remain idle before it expires. If you want them
| to immediately expire on the browser closing, set that option.
|
*/
'lifetime' => 4320,
'expire_on_close' => false,
现在,如果你想控制每个用户的会话生命周期,你需要在用户登录之前设置这个值。
- 数据库中是否存在用户尝试
- 如果是,并且他是需要更长会话寿命的用户,请运行
config(['session.lifetime' => $newLifetime]);- 登录用户
- 为当前用户享受更长的会话寿命
——Source
您必须在LoginController 中进行上述更改。
【讨论】:
LoginController 中更改它,它将是每个用户。