PHPで画像を擬似的にキャッシュさせない方法
PHPで画像をブラウザにキャッシュさせない方法です。
参考url:
http://webtech-walker.com/archive/2007/03/07112848.html
Web上でフォームを用いて画像をアップする際などに、画像がブラウザにキャッシュされて、いちいちリロードしないと画像が切り替わらないで困った事はありませんか?
自分はあります。はい。そこで、調べました。
そうしたら、上記「Webtech Walker」さんで解決方法がありましたのでメモ。
対処法としては画像の名前の後にユニークなクエリ情報(urlの?以降の情報)を付け加えることです。
<img src="/sample.jpg?<?php echo time(); ?>” alt=”サンプル”> 出力: <img src=”/sample.jpg?1173278322” alt=”サンプル”>
上記方法で擬似的にキャッシュされないように見せることができます。ブラウザがキャッシュしているかどうかは画像のURLで判断しているらしいので すが、クエリ情報もこの判断材料に含まれるので、画像の名前が同じでもクエリ情報が違っていれば画像を読みにいってくれるわけです。
キャッシュしなくても問題ないものならいいのですが、画像のサイズが大きい場合などキャッシュした方が良い場合もありますので使いすぎには注意が必要です。


