2010年9月8日水曜日

Webサーバー上のファイルのキャッシュの制御

ファイルのキャッシュコントロールをする要件があったので、復習の意味も兼ねて調査しつつ、手法をまとめてみました。


■htmlのmetaを付加する

<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">


一番簡単でポピュラーなやり方だと思います。
使えるのはHTMLファイルのみという制約がありますが。


■ファイルのオシリに引数を付ける

<img src="hoge.gif?20100907">
<link type="text/css" rel="stylesheet" href="hoge.css?20100908">
<script type="text/javascript" src="js/hoge.js?20100909" language="JavaScript"></script>


みたいな感じ。
引数を付けることによってファイルの内容が異なることを明示し、ブラウザにキャッシュさせないというやり方。
これもかなりポピュラーかと思います。


■Apacheで制御する

Header set Cache-Control "no-cache"
Header set Pragma "no-cache"


こんな具合に、httpヘッダにno-cacheを出力するように設定することで、httpd.confや.htaccessでも制御可能です。


今回はこちらのサイトを参考にしました。
http://blog.look-ss.jp/article.php/2008092600255048 http://tech.bayashi.net/pdmemo/browsercache.html



あと大事なのは実際キャッシュされているかどうかの確認。
firefoxのアドオン「CacheViewer」が便利です。
https://addons.mozilla.org/ja/firefox/addon/2489/

0 件のコメント:

コメントを投稿