2014-02-06 73 views
1

我的服務器返回一個文件下面的標題:無緩存控制頭將ETag的工作由Web服務器設置

Accept-Ranges:bytes 
Connection:Keep-Alive 
Content-Length:155 
Content-Type:text/css 
Date:Thu, 06 Feb 2014 18:32:44 GMT 
ETag:"99000000061b06-9b-4f1c118fdd2f1" 
Keep-Alive:timeout=5, max=100 
Last-Modified:Thu, 06 Feb 2014 18:32:37 GMT 

正如你所看到的,它不返回cache-control頭,但是它返回ETagLast-Modified標題。

我的問題是瀏覽器是否緩存所請求的文件?下面請瀏覽器標題發送ETag:"99000000061b06-9b-4f1c118fdd2f1"和服務器返回的狀態碼304

而第二個問題時,我可以observr是:將瀏覽器的緩存資源,並與ETag要求,如果Cache-control設置爲no-cache

回答

0

問題的第一部分 - 如果響應將被緩存以及何時將被重新驗證,則取決於您的瀏覽器(其實施和配置)。瀏覽器行爲與驗證頭和沒有驗證頭的行爲之間的唯一(標準化)區別在於前者可以減少服務器使用驗證的流量。

第二個問題:是的。瀏覽器將緩存資源,但每次打開頁面瀏覽器時都會詢問源服務器是否修改了資源。如果沒有修改,服務器將響應304,瀏覽器將顯示緩存的內容。否則,服務器將發送新的內容。