【发布时间】:2016-09-09 07:31:57
【问题描述】:
在我制作的网站上,我通常使用查询字符串参数使 CSS 和 JS 的缓存无效,如下所示:
注意:这是来自 chrome 检查器的屏幕截图,这些查询字符串都是由我在渲染到浏览器时制作的一个小系统自动附加的。
一位朋友现在告诉我,使用查询字符串的缓存效果不如更改文件名本身或文件名之前的路径中的某个位置。他还发送了an article along with 它,这里他们主要谈论人们使用代理时性能不佳。
但是,该文章已有 8 年历史。我想知道,这仍然是一个有效的观点吗?我应该关心吗?这真的是一种不好的做法吗?
【问题讨论】:
-
为什么你有
?v=1.1.0-alpha的文件? -
@Justinas 这就是您使缓存无效的方式,您将新版本添加到查询字符串中,并且该文件不会从缓存中获取,而是从网络中获取。
-
@jcubic 实际上您将文件名设置为
header.js并且仅将 chache 无效附加到链接。 OP显示所有文件都以?v=1.1.0-alpha作为(?)扩展名 -
@Justinas 这不是一个扩展在你的浏览器中试试这个
data:text/html,<script src="http://code.jquery.com/jquery-1.11.3.min.js?v=1.11.3"></script>你会看到文件jquery-1.11.3.min.js?v=1.11.3
标签: javascript css caching web