Perlを使用して動的に作成されたGIFとPDFを自分のWebサイトで提供しています。例えば:
<img src="file.pl?f=image.gif" />
<a href="file.pl?f=doc.pdf">Document</a>
コンテンツは訪問者のブラウザに所定の時間キャッシュされ、訪問者はダウンロードする前にPDFを開くか保存するように求められます。
そのために、次のHTTP応答ヘッダーを出力しています。
GIFの場合:
HTTP/1.1 200 OK
Status: 200 OK
Content-Type: image/gif
Etag: "MD5 hash"
Expires: Wed, 05 Dec 2012 14:30:00 GMT
Last-Modified: Wed, 05 Dec 2012 14:00:00 GMT
Cache-Control: public, max-age=1800
PDFの場合:
HTTP/1.1 200 OK
Status: 200 OK
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="doc.pdf"
Etag: "MD5 hash"
Expires: Wed, 05 Dec 2012 14:30:00 GMT
Last-Modified: Wed, 05 Dec 2012 14:00:00 GMT
Cache-Control: public, max-age=1800
Content-Description: file transfer
Content-Transfer-Encoding: binary
about:cache?device=disk
Firefoxで移動すると、コンテンツはバージョン3.6.28以前(Windows OS)で適切にキャッシュされます。ただし、 Firefox4以降ではGIFのみがキャッシュされています。
プラグインが問題の原因であるかどうかを確認するためにセーフモードでFirefoxを起動しようとしましたが、PDFはまだキャッシュされていませんでした。また、コンテンツタイプをに変更してみましapplication/pdf
たが、運が悪かったです。
助言がありますか?
ありがとう。