这篇文章上次修改于 1080 天前,可能其部分内容已经发生变化,如有疑问可询问作者。

当我们对网站做了修改,推送到远程服务器后,发现页面还是老样子。这是由于浏览器缓存的问题,html 页面一般会及时更新,但 JavaScript/css 脚本常常无法及时更新,这时候需要手动进行处理。

方法一:
在多数浏览器中,可以使用 CTRL + F5 快捷键强制刷新。一般能看到最新的结果。

方法二:
如果你使用 Google chrome 浏览器,则可以使用 debugger 禁止缓存: 右键 - inspect - Network - Disable cache

方法三:
在源码的 link/script 中修改如下:

<link rel="stylesheet" href="my-css-file.css?v=1">
<script src="my-js-file.js?v=1"></script>

主要是在文件后加上 ?v=1 类似的字符串。当然也可换成其他写法,如:?time=2019126 等。

下次更新文件时,将后缀修改成其他数字即可。这样的好处是你的用户们也可以同时收到最新更新。

参考链接:
https://stackoverflow.com/questions/3951187/javascript-file-not-updating-no-matter-what-i-do
https://stackoverflow.com/questions/3466989/what-does-appending-v-1-to-css-and-javascript-urls-in-link-and-script-tags-do