PHPにおける、ページの有効期限切れ対策
戻るボタンを押したとき、「ページの有効期限切れ」って出るとちょっとユーザビリティ悪い。
ってことで出ないようにしたい。
どういうときに出るかというと、前の画面からPOSTデータで渡ってきている画面に
戻った場合に起こってしまう可能性がある。
それを回避するために以下のように設定すればよい。
session_cache_limiter(none);
でphp.iniの設定を上書いてしまおう。
Expireさせない、以下でも良いですね。
session_cache_limiter('private_no_expire');
ちなみにsession_start()する前にしないと無効です。
フレームワークなど利用しているときは注意。
初期読み込み設定ファイルか、フックコントローラーに書いておきましょう。
というよりもコントローラー上部で、php.iniの設定を上書くフレームワークを
作って置いた方がのちのち良さげです。外部設定ファイルで読み込むようにしておきたいですね。
ちなみにIE6だとリフレッシュできずに問題になることもある。
そんなときはGETパラメータの項目に動的に変更するパラメータを作っておくと良いですね。
(下記の参考サイト参照)(ちなみにIE7で直っているかは不明。)
参考サイト
上手くまとめていらっしゃるので、下記のサイトも見ておくと吉です。
▼「ページの有効期限切れ」問題
http://www.workspot.jp/tech/php_tips.html
▼Internet Explorer の「ページの有効期限切れ」対策
http://memo.xight.org/2006-06-13-2
