2011-03-19 52 views
3

我剛剛在我的網站上運行了yslow,並且我有一個關於到期頭文件的問題:YSlow給了我一個:添加過期標題的F級。有20個靜態組件沒有遠期到期日期。這些都是css或js文件。YSlow建議。在IIS中,爲什麼默認情況下不會啓用啓用內容過期檢查

現在,當我去IIS(6.0),並轉到http標題選項卡,啓用內容過期不會被選中。從reading this看來,這是正確的做法,因爲瀏覽器會緩存內容。所以我很困惑爲什麼yslow在抱怨。此外,聽起來像瀏覽器將緩存這個數據修改日期無論如何,這是整個事情無意義?

所以,如果設置這是一個沒有腦子,爲什麼這不是默認行爲?

有人可以請澄清。

回答

2

這裏沒有矛盾。您需要做的是在文件夾中設置包含靜態內容的內容到期日期。比如你的圖片,css和腳本文件夾。您可以在IIS和其他Web服務器中以文件夾爲單位設置內容過期時間。

+0

謝謝。但從我閱讀的內容來看,瀏覽器無論如何都會緩存所有靜態內容。那是對的嗎?? – leora 2011-03-19 02:32:59

+1

@ooo。不對。如果文件沒有內容過期或內容過短,瀏覽器將再次檢索它。因此,請將靜態文件文件夾的內容過期設置爲安全。 – Keltex 2011-03-19 02:34:54

+0

謝謝。我在內容和腳本文件夾中將內容過期設置爲1天,但當我重新加載站點時,YSlow仍然在添加到期頭部時給我一個F。有什麼想法嗎 ?? – leora 2011-03-19 02:35:56

0

瀏覽器不知道什麼內容是「靜態」或不是;它實際上沒有辦法知道,yslow只是在猜測,很可能。這可能是猜測正確......但在Web服務器中默認情況下具有錯誤的Expires值可能會導致瀏覽器緩存您不希望緩存的動態內容。

這就是爲什麼默認情況下它不是這樣設置的原因。

相關問題