CSS文件名大小写敏感& Css文件缓存

时间:2009-10-23 15:30:51

标签: html css caching

我们正在重写我们的一些网站,并试图为我们的用户充分利用浏览器缓存。我们创建了一组共享的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" />

3 个答案:

答案 0 :(得分:4)

网址区分大小写,因此最好的方法是始终使用特定大小写。为简单起见,我建议将所有内容都设为小写(并用短划线分隔单词)。出于搜索引擎优化的目的,这也建议用于您的页面名称和图像。

浏览器会将不同的案例视为不同的文件,因为他们不知道服务器是否正在执行相同的操作。因此,如果浏览器看到指向style/screen.css的链接,则不会使用其Style/Screen.css的缓存。

答案 1 :(得分:1)

URL是区分大小写的,浏览器遵循该标准 - 不同的案例是不同的文件。我会犹豫使用上面的例子,因为有些浏览器可能不遵循标准的protocall(例如,我认为Windows不区分大小写,并想知道一些悲伤的旧浏览器是否无法区分'文件'和'文件')。

答案 2 :(得分:1)

浏览器将始终区分URL中的不同大小写,因为某些Web服务器会针对不同的大小写返回不同的结果。

Windows Web服务器并不关心外壳,但是Linus服务器确实如此。如果该文件位于Linux服务器上,则会使用错误的外壳获得HTTP 404。