Ownedmedia ウェブ制作に役立つコンテンツを発信中!

PHP 2019.11.03

PHPでウェブページのキャッシュを残さないようにする

Tags:

先日、クライアントワークの中でキャッシュを残さないようにする要望があり、いろいろ調べてみると手軽に出来たので備忘録として残しておきたいと思います。今回はPHPでキャッシュを残さないようにする方法となります。

 

まず、HTML5以前のものですと、下記のHTMLのメタタグ指定のみで実現できたようですが、HTML5からは廃止になったとのことで、現在はほぼ使う機会は無いかと思います。

【HTML】※一部抜粋

<head>
 <meta http-equiv="Pragma" content="no-cache">
 <meta http-equiv="cache-control" content="no-cache">
 <meta http-equiv="expires" content="0">
 .......
</head>

 

そこで、PHPのheader関数でヘッダー情報を変更することで対応する形になります。具体的には下記のようにheader関数で指定します。この時にファイルの先頭に来るようにしておきます。

【PHP】

<?php
 header('Expires: Tue, 1 Jan 2019 00:00:00 GMT');
 header('Last-Modified:' . gmdate( 'D, d M Y H:i:s' ) . 'GMT');
 header('Cache-Control:no-cache,no-store,must-revalidate,max-age=0');
 header('Cache-Control:pre-check=0,post-check=0',false);
 header('Pragma:no-cache');
?>

 

反映したページのリクエストヘッダーを見てみると、キャッシュの扱いが指定したものに反映されているのが確認できます。

PHPでウェブページのキャッシュを残さないようにする

 

キャッシュを残らないようにする方法は他にもあるようですが、手軽にできるのでこの方法は覚えておくと便利ですね。

 

(参考にさせて頂いたサイト)
(CakePHP2.x) ブラウザにキャッシュさせない方法

この記事を書いた人

オガワ シンヤ

合同会社デザインサプライ代表兼CEO / ディレクター・ウェブデザイナー・フロントエンドエンジニアをやっています。「ウェブとデザインでヒト・モノ・サービスを繋げ新しい価値を生み出す」をコンセプトに日々奮闘中!制作中はチョコレートが欠かせない三十路Webクリエイター。

  • Twitter

コメントフォーム

記事に関するご質問やご意見などありましたら下記のコメントフォームよりお気軽に投稿ください。なおメールアドレスは公開されませんのでご安心ください。

内容に問題なければ、お名前・ハンドルネームとメールアドレスを入力いただき、下記の「コメントを送信」ボタンを押してください。

CAPTCHA


この記事もよく読まれています

Scroll to Top
ご質問・ご相談はありませんか ?