我正在浏览我最喜欢的网站的html … ahem …,并且在标记中看到了这一点:
<link href="/Content/all.min.css?d=20090107" rel="stylesheet" type="text/css" />
“?d = 20090107”做什么?我假设它是某种日期,但是我不确定为什么它在文件路径中。有任何想法吗?
这样做是为了给文件名添加一些唯一性,以便当他们更改CSS文件时,他们可以更改额外的位,以完全确保每个客户端都将重新加载CSS,而不是使用缓存版本。
网络服务器将忽略该参数,并正常服务/Content/all.min.css
注意:虽然CSS 可能 是动态生成的,但这是确保重新加载的常用习惯,并且给定参数是日期,这似乎很有可能。
编辑:播客38提到了这个…
自启动以来,我们一直在使用Expires或Cache-Control Header。当不经常更改项目(例如图像,JavaScript或CSS)时,这可以节省浏览器的往返行程。缺点是,当您实际更改这些文件时,必须记住要更改文件名。 现在,我们构建过程的一部分以版本号“标记”这些文件,因此我们不再需要记住手动执行此操作。