セッションタイムアウトが起きる条件
・ログインした後、しばらく放置したあと操作を行う。
・formタグ内に@csrf
を記述し忘れる。
セッションタイムアウト時にログインページに遷移させる
app\Exceptions\Hander.php に以下のように記述する。
Hander.php
// 以下のuse文を追加する。
use Illuminate\session\TolenMismatchException;
// 省略
public function register()
{
$this->reportable(function (Throwable $e) {
//
});
}
// ※ここから記述する※
// セッションタイムアウト時はログインページにリダイレクトさせる
public function render($request, Throwable $exception) {
if ($exception instanceof TokenMismatchException) {
return redirect()->route('login');
}
return parent::render($request, $exception);
}
}
↑if文を使用して、セッションタイムアウト時にログインページにリダイレクトさせる処理
参考サイト
セッション切断時にPOST通信をし419エラーになるのを防ぐ方法
https://zenn.dev/yuzuyuzu0830/articles/3952e36dc91705