2010-12-15 50 views
2

我在開發一個網站上遇到了一些問題。一些圖像正在被正確緩存並且它們的標題看起來正確(強etags,正確的最後修改)。但其他圖片的etags較弱(以W /開頭)和最後修改的標題總是等於當前時間。有誰知道我可以如何解決這個問題?我環顧四周,我似乎無法找到任何可行的方法。未被緩存的圖像是背景圖像,並且會導致每個頁面重新加載時出現背景閃光,這很煩人。緩存,弱標籤和最後修改的問題

頁眉:

Accept-Ranges:bytes 
Connection:Keep-Alive 
Content-Length:6879 
Content-Type:image/jpeg 
Date:Wed, 15 Dec 2010 07:41:44 GMT 
Etag:W/"4e863ea-1adf-49772cd85b340" 
Keep-Alive:timeout=15, max=98 
Last-Modified:Wed, 15 Dec 2010 07:41:44 GMT 
Server:Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.6 with Suhosin-Patch 

預先感謝您的任何幫助。我不是這類東西的專家,所以我很抱歉如果我錯過了一些明顯的東西。

回答

1

如果你想確保你的圖像緩存,你不能依靠驗證頭(last-modifiedetag)。爲確保緩存,您需要使用ExpiresCache-control。驗證僅在緩存過期機制說內容陳舊後才使用。如果您不使用ExpiresCache-control標題,內容新鮮度未定義,並且僅取決於瀏覽器的特定實現,因此在您的情況下它可能會出現意外情況。

0

我不確定發生了什麼變化,但看起來問題已消失。

頁眉:

Accept-Ranges:bytes 
Connection:Keep-Alive 
Content-Length:6879 
Content-Type:image/jpeg 
Date:Wed, 15 Dec 2010 16:46:14 GMT 
Etag:"4e863ea-1adf-49772cd85b340" 
Keep-Alive:timeout=15, max=99 
Last-Modified:Wed, 15 Dec 2010 13:20:37 GMT 
Server:Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.6 with Suhosin-Patch 
+1

這可能是由於您的etag從弱變強。 – 2013-03-27 00:58:24

+0

@JustinY,我現在有同樣的問題。我的兩個腳本之一加載要求強etag靜態圖片,另一個與弱etag。由於兩個腳本幾乎完全相同,我無法理解這種情況。你能幫助建議嗎? – 2013-11-07 18:36:09

+0

對不起,問題解決了。 =)這是時區問題。 – 2013-11-07 18:42:10