1

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=diskFirefoxで移動すると、コンテンツはバージョン3.6.28以前(Windows OS)で適切にキャッシュされます。ただし、 Firefox4以降ではGIFのみがキャッシュされています。

プラグインが問題の原因であるかどうかを確認するためにセーフモードでFirefoxを起動しようとしましたが、PDFはまだキャッシュされていませんでした。また、コンテンツタイプをに変更してみましapplication/pdfたが、運が悪かったです。

助言がありますか?

ありがとう。

4

0 に答える 0