" いいね " なライフをつくる。

うそはつかない。"いいね"をつくる。じゆーうな日記です。

Laravel5.6 エラー "The page has expired due to inactivity. Please refresh and try again." と出た時の対処法

環境 Laravel5.6

下記のメッセージとともに何も動かなくなってしまうエラーに遭遇しました。

このエラー、ログにも原因が表示されず解決策が分かりませんでした。 ググったらすぐに解消したのですが、焦りました。

エラー内容

The page has expired due to inactivity.

Please refresh and try again.

こんな画面 f:id:tusukurukun:20180412000900p:plain

原因

  • postで送信した際に、formにcsrfを設定していなかったことが原因

解決策

  • formにcsrfを設定する。

下記のbladeに、@csrfを書き加える

<form action="/test" method="post">
    <input type="text" name="name">
    <input type="submit" value="送信">
</form>

↓↓↓

<form action="/test" method="post">
    @csrf
    <input type="text" name="name">
    <input type="submit" value="送信">
</form>

これにて解消。

参考ページ

Laravelの日本語公式ドキュメントの閲覧バージョンを指定すると、 該当バージョンへ自動遷移してくれるアプリを作成したので、ぜひご活用ください。

bit.ly