2009-10-23 62 views
8

我們正在重寫我們的一些網站,並試圖爲我們的用戶充分利用瀏覽器緩存。我們已經創建了一組共享的css文件,我們計劃將這些文件用作我們創建的多個網站上的「企業品牌」。CSS文件名大小寫敏感&Css文件緩存

原因是,我們知道瀏覽器會將CSS文件緩存一段確定的時間。如果我使用不同的外殼在不同的站點中指定相同的文件名,那麼它會緩存兩個文件的版本(即使它們是相同的內容),還是會識別它是同一個文件,從而忽略文件名的大小寫


<link href="http://branding.corporateentity.com/style/screen.css" type="text/css" /> 
<link href="http://branding.corporateentity.com/style/print.css" type="text/css" /> 

VS:


<link href="http://branding.corporateentity.com/Style/Screen.css" type="text/css" /> 
<link href="http://branding.corporateentity.com/Style/Print.css" type="text/css" /> 
+1

總的來說,我假設某個系統會在某個地方做錯事,所以避免用案例來區分類似命名的東西。最好堅持所有命名的一套外殼規則。您可以更輕鬆地製作腳本來查找代碼中的案例問題,而不是檢查可能正在使用它的每個可能的Web環境。 – 2009-10-23 15:37:28

回答

4

網址區分大小寫,所以最好的辦法是始終使用特定的情況。爲了簡單起見,我建議將所有內容都設爲小寫(並用短劃線分隔文字)。這也建議您的頁面名稱和圖像,爲搜索引擎優化的目的。

瀏覽器會將不同的文件視爲不同的文件,因爲他們不知道服務器是否執行相同的操作。因此,如果瀏覽器看到指向Style/Screen.css的鏈接,將不會使用其緩存style/screen.css

1

網址的是大小寫敏感的,和瀏覽器遵循標準 - 不同情況下是不同的文件。然而,我會毫不猶豫地使用上面的例子,因爲一些瀏覽器可能不遵循標準協議(例如,我認爲Windows不區分大小寫,並且不知道是否某些可悲的舊瀏覽器無法區分'文件'和'文件')。

1

瀏覽器將始終區分不同的URL中的大小寫,因爲一些Web服務器返回不同的結果不同的結果。

Windows網絡服務器不關心套管,但是Linus服務器。如果該文件位於Linux服務器上,則會使用錯誤的外殼獲取HTTP 404。

+0

我的桌面是Windows,但我的服務器是Linux。偶爾我會在圖形程序寫入一個擴展名爲「.JPG」的文件時燒燬,但我的鏈接寫成「.jpg」。當我在Windows上測試時,它工作正常,但是當我上傳到Linux時,404。故意混淆混合情況只是爲自己設置了麻煩。 – Jay 2009-10-23 16:28:36