什么“? 做一个Css链接?
我正在浏览我最喜欢的网站的HTML …嗯…我看到这个标记:
<link href="/Content/all.min.css?d=20090107" rel="stylesheet" type="text/css" />
“?d = 20090107”是做什么的? 我假设这是某种date,但我不知道为什么它是在文件的path。 有任何想法吗?
这是为了增加一些独特的文件名,所以当他们改变CSS文件,他们可以改变额外的位,以完全确保每个客户端将重新加载CSS而不是使用caching版本。
networking服务器将忽略参数并正常提供/Content/all.min.css
注意:尽pipeCSS 可能是dynamic生成的,但这是确保重新加载的常用方式,并且参数是date,所以很可能。
编辑: 播客38提到这个…
自启动以来,我们一直在使用Expires或Cache-Control Header。 这可以节省浏览器往返更改频繁的项目,如图像,JavaScript或CSS。 缺点是,当你真的改变这些文件,你必须记得改变文件名。 我们的构build过程的一部分现在用一个版本号“标记”这些文件,所以我们不再需要手动记住这些。
每次样式更新时都要“清除caching”。 我会推测,每当有变化时,对这些风格负责的人都会增加。 这是因为浏览器在样式字段中看到了一个不同的URL,所以它将获取最新版本,即使它在技术上位于服务器的相同位置。
正如在注释中有帮助地指出的那样,css文件经常会在将来被设置好,这个方法是caching相关头文件的好办法。
相当有用的技巧。
它是让浏览器认为它是一个新的文件,每次刷新其caching。
样式表经常更改时非常有用…