画像表示にクライアントキャッシュを使わせようと、
設定等を行った結果、下記のようなレスポンスを返すようになりました。
(Live HTTP headersにて確認)
---------------------------------------
HTTP/1.x 200 OK
Date: Mon, 02 Feb 2009 14:29:58 GMT
Server: Apache
Expires: Thu, 05 Feb 2009 14:29:58 GMT
Cache-Control: public, max-age=259200
Last-Modified: Thu, 25 Dec 2008 08:03:48 GMT
Connection: close
Transfer-Encoding: chunked
Content-Type: image/jpeg
---------------------------------------
expiresの日時までクライアント側キャッシュを使うよう、
正しくレスポンスを返しているように見えるのですが、
リロードすると同様のリクエスト(レスポンス)が発生してしまいます。
expiresが動作していない原因として、
何が考えられるでしょうか。
Expiresを設定しているページで、IE6とFirefox3で確認してみました。
Ctrlを押さなくても、F5でExpiresを無視してリクエストが発生していますね~
この時、レスポンスは304が返ってきています。
Ctrl+F5だとレスポンスが200で返ってくるので完全にキャッシュを無視してくれるようです。
ブラウザでキャッシュを使用しない設定になっていませんか?
参考URL:
http://www003.upp.so-net.ne.jp/shigeri/ie/temporaryfile.html
なっていないです。
リロードするとクライアントのキャッシュを参照しないのでは?
Expiresヘッダの動作確認はリロードせずにリンクやブックマークからアクセスするか、
アドレスを直接入力した方がよろしいかと思います。
厳密には検証していないんですが、
どうもその可能性が高そうです。
Ctrl+F5ではなく、単なるF5でもexpiresが無視されるって事なんですかね。
Expiresを設定しているページで、IE6とFirefox3で確認してみました。
Ctrlを押さなくても、F5でExpiresを無視してリクエストが発生していますね~
この時、レスポンスは304が返ってきています。
Ctrl+F5だとレスポンスが200で返ってくるので完全にキャッシュを無視してくれるようです。
検証ありがとうございました。
直感(私の)と食い違うブラウザの動作で、
結構長い事はまってしまいましたが、
おかげ様で解決となりそうです。
検証ありがとうございました。
直感(私の)と食い違うブラウザの動作で、
結構長い事はまってしまいましたが、
おかげ様で解決となりそうです。