私はを持っています。CloudfrontをCDNとスプロケットとして使用して資産を圧縮し、長いCache-Control
ヘッダーを設定しています。設定するCloudfrontはアセットを再取得しません
Cache-Control:public, max-age=31536000 Connection:close Content-Encoding:gzip Content-Type:application/javascript Etag:"892a3afb514e3c84646835f9ef101026" Last-Modified:Tue, 17 Jan 2012 16:05:17 GMT Server:thin 1.2.11 codename Bat-Shit Crazy Vary:Accept-Encoding Via:1.0 c662f4e5a3bc7b224ce1bbecb0a23d82.cloudfront.net:11180 (CloudFront), 1.0 fc4797024fafe16fcc03e892c23f078d.cloudfront.net:11180 (CloudFront) X-Amz-Cf-Id:bd2a89fb81bba2513f30d6940347693ef483defb4783da06d81b002af23545c39b9176b2c7cb144f,VF69FYlYU8ezzHQp7QkU2GvEQ8NmDqEwRX-wu7H63yNqE1ZlTaAq3g== X-Cache:Miss from cloudfront X-Runtime:0.012413 X-Ua-Compatible:IE=Edge,chrome=1
パーフェクト:資産へ
最初の要求は私にそのようなレスポンスヘッダを与えます。それはCloudfrontからキャッシュを見逃し、私のアプリからそれを取り出したので、今からそこからロードするべきです。私はページを更新する場合
は今...私はこれらの応答ヘッダを取得:それはCloudFrontのを打つよう
Connection:keep-alive Server:thin 1.2.11 codename Bat-Shit Crazy Via:1.0 86123d99569c9296c8605243e9a10621.cloudfront.net:11180 (CloudFront), 1.0 de9fc23d505dae3d19973a98bfa1eba0.cloudfront.net:11180 (CloudFront) X-Amz-Cf-Id:a7bf6ffb30c43d306835190d210aeb8ec794c1ff619ad7aaecbad220c1822fe165bda624ae8382e1,bcij_88KOAvLPSqEKDRSvOBjEj7atiKBCAjSbqc2cfdb-BHOTi--LA== X-Cache:RefreshHit from cloudfront X-Runtime:0.006909 X-Ua-Compatible:IE=Edge,chrome=1
が見えます。私は304 not modified
を得る。それで、私はファイルをもう一度ダウンロードしていないように見えますが、私のソースサーバーにもこの要求が出されています。
どうしてですか? Cloudfrontは常に私の資産をキャッシュしてはいけませんか?私は資産をバージョニングしているので、最初のリクエストではサーバからセーブする必要はありません。私はこのタイプの行動を強制することができますか?