我是瀏覽器緩存的新手。我試圖讓Chrome瀏覽器使用查詢參數永久緩存任何靜態文件(用於緩存清除目的)。我已經將Cache-Control和Expires頭文件設置爲未來,這應該足以說「永遠緩存」。由此產生的響應標頭:Chrome拒絕緩存Javascript
HTTP/1.1 200 OK Cache-Control: public, max-age=315360000 Connection: keep-alive Content-Encoding: gzip Content-Type: application/x-javascript Date: Wed, 16 Jul 2014 09:29:54 GMT Last-Modified: Wed, 16 Jul 2014 03:44:14 GMT Server: nginx/1.6.0 Transfer-Encoding: chunked Vary: Accept-Encoding
Firefox和Safari似乎尊重所有cachebusted(?v =查詢參數)文件。 Chrome主要遵循指令,除了Javascript。大多數情況下,它使用If-Modified-Since標頭執行請求,而不是從緩存中加載。有時候,其中一個會從緩存中加載,另一個會產生一個導致304的請求。通常,當從新選項卡加載頁面時,它將從緩存中加載,但如果在地址欄中輸入,則不會。
我使用的是什麼,我認爲是完全一樣的頭觀察到其他網站,並且這些文件總是從緩存中加載。即使您進行刷新,其中一些緩存也會從緩存中加載。
我知道緩存行爲有點不可預知,但我想確保我不會監督讓Chrome瀏覽器執行此操作的內容。