什么是“?” 在一个CSS链接?

我正在浏览我最喜欢的网站的html ... ahem ...,并且在标记中看到了这一点:


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

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


守候你守候我
浏览 375回答 3
3回答

牧羊人nacy

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

海绵宝宝撒

每次更新样式时都要“清除缓存”。我推测,负责这些样式的人每次更改都会增加它。这是因为浏览器在样式字段中看到的URL不同,因此即使从技术上讲它在服务器上的同一位置,它也将获取最新版本。正如评论中有帮助的指出的那样,css文件的到期通常会在将来设置,此方法是缓存相关标头的一个不错的选择。非常有用的技巧。

慕尼黑8549860

这是使浏览器每次刷新缓存时都认为它是一个新文件。当样式表定期更改时非常有用...
打开App,查看更多内容
随时随地看视频慕课网APP