フォームページを作成していると、ブラウザの戻るボタンで前のページに戻ろうとした際に、「ドキュメントが有効期限切れです」と表示されることがあります。
こいつのせいで、せっかく入力したフォーム情報がリセットされてしまうこともありますよね。
以前、この現象を解決すべく、困りながら色々と調べていた時があったのですが、PHPで1行追加するだけで解決しちゃいました。
その魔法の記述は
session_cache_limiter("none");
です。
何も指定しないと、この設定の初期状態は
session_cache_limiter("nocache");
となっています。
これは動的にページを生成する際に、キャッシュを残さないで常に最新の情報をサーバから読み込ませようとしている状態です。
これが「ドキュメントが有効期限切れです」を引き起こしています。
なので、対処方法としては”none”を指定するようにしましょう!
以下は余談ですが、
session_cache_limiter("private_no_expire");
と指定すると、キャッシュが残ってしまい、古い情報が表示されてしまうことがあるので注意しましょう!