ブラウザのキャッシュ機能を、制作者側で制御する、手っ取り早く確実な、たったひとつの方法

ブラウザのキャッシュ機能を、制作者側で制御する、手っ取り早く確実な、ひとつの方法

通常、ウェブページの表示データはキャッシュとしてローカルに保存され
次回の表示の高速化などに役立てています。

しかしながら更新の多いページなどは、サーバで更新したはずが
閲覧者側では更新が反映しない、といった自体がよくあります。
制作者なら誰もが何度も経験しているのではないでしょうか。

そこで今回はキャッシュ機能を
情報発信者側で制御する方法をひとつだけ語紹介します。

Ajax?文字化け対策とブラウザキャッシュ対策: Script雑感
http://zombiebook.seesaa.net/article/27148814.html

URL 後ろのパラメータクエリに毎回違う値をくっつける。だけ。
http://www.hogezou.com/hogeru.cgi?hoge=*

物理的にurlが違うからキャッシュもされない、という単純さ。
この方法、いいですね!
※当方、未検証ですが。信じます。

ただ弊害もあって、ページ更新したのにキャッシュで更新されない、
ということはなくなっても、urlが違うがために
新規キャッシュがどんどん溜まっていく、という問題があるかもしれません。
※検証はできてませんが、参考サイトのコメント欄で指摘があるようでしたので。

コレに関してはキャッシュにも容量制限がありますので
HDDリソースを食い散らかすという危険はなさそうです。

もう一点、キャッシュが全て該当ページのもので埋め尽くされてしまう!という
懸念もあるかもしれませんが、よほど頻繁にアクセスされるページでもない限り
そこまで懸念することもないのかな、と思っています。
※あくまで私の主観的想像ですが。

やはりこの対策が一番手っ取り早く かつ 確実な方法だと思います。

手っ取り早い、という意味には、パラメータ付与以外の理由もありまして。
そのほかの方法だと、キャッシュ対策用のコードをいれ、
(それもhtml、php、perl、そのほかファイルなどにより異なる指定が必要)
キャッシュ対策がちゃんとなされているかの検証作業も必要になってきますが
この方法だとそんな作業も基本的には要らないから、手っ取り早い、というわけです。

他には、urlが一定にならないのがなんとなくイヤ。。
とかいう意見もあるかもしれません。

そういう方でも、同様の方法で
画像だけでもキャッシュ対策されてはいかがでしょうか。
画像のキャッシュも困りますしね。

続:ブラウザのキャッシュを無効にしたい!…IEだけ? – こまちドーナツ
http://www.comachi.com/2006/07/ie.html

みんなが困っているこのとてもやっかいなIEのブラウザキャッシュの問題ですが、確認画面で出力するIMGタグのURLの後ろに「?任意の数字」を付加し、いかにもファイル名が異なっているかのようにブラウザに思い込ませることで解決するようです。例えばこんな感じです。

echo “<img src=\”imgfilename.jpg?”. time() .”\”>”;

これで、出力するたびに、imgfilename.jp?1153032707とか、imgfilename.jp?1153032726とか、微妙に値が変化するため、確認画面でキャッシュに影響されません。

私はtime()関数を使いましたが、アクセスするたびにことなる文字列を出力してくれる関数であれば、time()関数に限らなくても良いようです。

これも前述の対策と基本は同じです。
いいですね!

ただこの場合もキャッシュで埋め尽くされる危険性はあるかもしれませんが、
前述の通りここでは気にしないこととします。

。。。。最後にふと思ったことが。
皆がみな、キャッシュ対策をしだしたら
キャッシュの意味がなくなってしまうな、ということですが。。
まぁそんなこと気にしてたらこちらもやってられないですし、
実際はそんな自体にはならないと思います。おそらく。
なぜならこれを実践する人がどれだけいるか?そんなにいないだろう。。。
と思うからです。

以上です。

●参考にしたサイト

Ajax?文字化け対策とブラウザキャッシュ対策: Script雑感
http://zombiebook.seesaa.net/article/27148814.html
感謝!

ブラウザ のキャッシュを制御する/no-cache
http://tech.bayashi.net/pdmemo/browsercache.html
基本的な対策法がかかれており、勉強になります。

続:ブラウザのキャッシュを無効にしたい!…IEだけ? – こまちドーナツ
http://www.comachi.com/2006/07/ie.html
とくにIEの画像キャッシュは問題が多そうと認識させられましたね。