私は約HTTP browser cachingを読んでいて、jQueryのMedia Temple ProCDN backed library:http://code.jquery.com/jquery-1.7.1.min.jsがGoogleによるcaching best practicesに従っていないことに気づいたとき、私自身のサイトでそれを使いこなしていました。ほとんどHTTPキャッシュ:なぜCache-Controlおよび/またはExpiresの代わりにETagを使用するのですか?
(と思う)、ブラウザ側のキャッシュの2種類があります。
有効期限とのCache-Control:最大エージング。
これらは「無条件に適用される強力なキャッシュヘッダー」とみなされます。つまり、一度設定されるとリソースがダウンロードされると、ブラウザは有効期限または最大年齢までリソースに対するGET要求を発行しませんが達成された。"
は、最終更新日やETagの
種類のこれらのオファーキャッシングの両方が、最後の修飾は、ブラウザ固有のヒューリスティックをfollowes、彼らがあってもよいのETagは、軽量化をよりHTTPリクエストを必要とするとき304 Not- Modifiedが返されます。いずれにせよ、これらはどちらもより多くのGETリクエストを必要とする可能性があります。
静的なjQueryのバージョン決して変更する必要があります。だから私はそれが遠い未来Expiresヘッダーで提供されるべきだと思うだろう。より多くの場合、このような多くのサイトで使用できるアセットは、理想的には新しいGETリクエストを必要としません(たとえETagsの有効性を確認するために小さくても)。
唯一のETagを使用していないのCache-ControlやExpiresヘッダがあるようだ。
Status: HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Type: application/x-javascript; charset=utf-8
Date: Mon, 05 Dec 2011 19:45:57 GMT
ETag: "9e69008-16eac-5177b900"
Last-Modified: Tue, 22 Nov 2011 02:11:16 GMT
Server: ECS (fra/D59E)
Vary: Accept-Encoding
X-Cache: HIT
Content-Length: 93868
Connection: close
から:http://web-sniffer.net/?url=http%3A%2F%2Fcode.jquery.com%2Fjquery-1.7.1.min.js
これまで未来を設定しないが理由は、ヘッダーや使用期限れますこのような状況のキャッシュ制御?私はここで何かを誤読していますか?それとも、jQueryの人々が間違って設定していますか?
おそらく、この質問はServerFaultにはもう少し適していますが、うまくいけばここでいいです。 – ehc