如何强制浏览器从服务器而不是从缓存加载HTML和CSS页面?

时间:2018-11-06 20:47:46

标签: php html css angularjs

我正在使用angular和javascript开发网站,但是每次我进行一些更新时,客户端都必须清除缓存才能感觉到此更新。如何强制浏览器平稳地重新加载更新的文件,而不要求用户清除缓存?

1 个答案:

答案 0 :(得分:3)

这里有很多不同的选项,但是我们的想法是在包含动态值时将其添加到路径的末尾。

例如:

<link href="styles.css?test=123" rel="stylesheet" />

这将迫使浏览器一次从服务器加载样式表,但随后该版本将被缓存。

如果您使用的是PHP或.NET之类的服务器端语言,则可以在末尾放置一个动态值,该值在每次为用户加载页面时都会有所不同。

在PHP中:

<link href="styles.css?test=<?=(new DateTime())->format("YmdHis")?>" rel="stylesheet" />