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]);
を実行します- ログインユーザー
- 現在のユーザーのセッションの寿命を延ばす
— ソース
LoginController
で上記の変更を行う必要があります。