1

これはすでに1週間私を悩ませています。ユーザーが正常にログインした後にログインページのキャッシュをクリアし、戻るボタンが押されたときにログアウトした後にユーザーが前のページを表示できないようにする必要がありました。このコードを自分の作業 (インデックス ページとログイン ページの両方) で codeigniter に追加しようとしましたが、それでも何も起こりません

header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");

これと同様に:

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="EXPIRES" CONTENT="01 Jan 1970 00:00:00 GMT">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">

セッションをチェックするためにバックグラウンドで実行する非同期タスクについてはすでに考えていますが、AJAX はあまり得意ではありません。まあ、私が望んでいたのは、Ruby on Rails を使用して行うのと同じくらい簡単にすることCache-Control: no-cacheです。ちなみに私もRubyの知識はありませんが、そのコードを見ると、なぜcodeigniterにそのような単純な解決策がないのだろうと思いますか? このトリックを行うための解決策はありますか?

4

1 に答える 1

6

コントローラーで codeigniter 出力クラスを使用するのはどうですか:

$this->output->set_header("Cache-Control: no-store, no-cache, must-revalidate, no-transform, max-age=0, post-check=0, pre-check=0");
$this->output->set_header("Pragma: no-cache");
于 2012-10-27T11:56:42.577 に答える