スポンサードリンク

CakePHPで動かしていると
どうもブラウザキャッシュの影響で
更新しても、変わっていないということがありました。
CakePHPでブラウザにキャッシュさせない方法です。
スポンサードリンク
ブラウザにキャッシュさせない方法
色々調べていたらCookbookに載ってました。
以下のようにキャッシュさせたくないコントローラーのアクション内に記述します。
public function index() { $this->response->disableCache(); }
簡単にできるんですね。
コントローラー全体にかけたい場合はbeforeFilterに
サイト全体にかけたい場合はAppContorollerに書いてあげればいいですね。
ちなみにCakePHPじゃない場合も書いておきます。
HTMLに直接書く場合は
headタグ内に以下のように書きます。
<meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0">
PHPファイルの場合はheader関数を使います。
header( 'Expires: Sat, 26 Jul 1997 05:00:00 GMT' ); header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' ); header( 'Cache-Control: no-store, no-cache, must-revalidate' ); header( 'Cache-Control: post-check=0, pre-check=0', false ); header( 'Pragma: no-cache' );
(参考)
キャッシュされないページをPHPで作る
スポンサードリンク