什么'?'在Css链接中做什么?

时间:2009-01-13 12:45:58

标签: css

我正在浏览我最喜欢的网站的HTML ...咳...我在标记中看到了这个:

<link href="/Content/all.min.css?d=20090107" rel="stylesheet" type="text/css" />

“d = 20090107”是做什么的?我假设它是某种日期,但我不确定为什么它在文件的路径中。有什么想法吗?

3 个答案:

答案 0 :(得分:70)

那就是为文件名添加一些唯一性,这样当他们更改CSS文件时,他们可以更改额外的位以确保每个客户端都会重新加载CSS而不是使用缓存版本。

网络服务器将忽略该参数并正常提供/Content/all.min.css

注意:虽然可能 CSS是动态生成的,但这是确保重新加载的常用习惯用法,如果参数是日期,则很可能。


编辑:Podcast 38提到了这个......

  

我们一直在使用Expires或   我们的缓存控制标题   推出。这样可以保存浏览器   不经常去往的往返旅行   更改项目,例如图像,   javascript或css。缺点是   那,当你真正改变   这些文件,你必须记住   更改文件名。 我们的一部分   构建过程现在“标记”这些文件   版本号,所以我们不再   必须记住手动执行此操作。

答案 1 :(得分:12)

每次更新样式时都要“清除缓存”。我推测,每当有变化时,负责这些风格的人都会增加它。这是因为浏览器在样式字段中看到了不同的URL,因此它将获取最新版本,即使它在技术上位于服务器上的相同位置。

正如评论中有用地指出的那样,css文件通常会在未来设置到期,这种方法是缓存相关标题的一个很好的回避。

相当有用的技巧。

答案 2 :(得分:4)

让浏览器认为它每次刷新缓存都是一个新文件。

当样式表定期更改时非常有用......