javascript - 如何确保浏览器在更新后加载文件的最新版本?

标签 javascript html apache nginx

这个问题在这里已经有了答案:





How to force the browser to reload cached CSS and JavaScript files

(57 个回答)


7年前关闭。




在推出新的网站更改或 Web 应用程序更改时,有时浏览器会在您导航到该站点时加载旧的 javascript 或图像文件。通常,浏览器需要手动刷新页面才能加载新更新的文件。

如何确保在更新后,用户在第一次加载页面时收到最新的文件,而不必手动刷新以清除任何缓存的文件。有没有一种非常可靠的方法可以通过发送过期 header 或上次修改来做到这一点?

最佳答案

我假设您有一个构建脚本或一堆任务脚本来帮助您完成更新网站/应用程序的重复过程。由于您使用 javascript 标签标记了您的问题,我将为您提供基于 javascript 的解决方案。

您可以使用(或已经使用)像 GruntGlup or any other 之类的任务运行器,然后运行缓存清除 task 来更新您的网址:

<script src="testing.js"></src>
<link href="testing.css" rel="stylesheet">
<img src="testing.png">

对此:
<script src="testing.js?v=123456"></src>
<link href="testing.css?v=123456" rel="stylesheet">
<img src="testing.png?v=123456">

这将阻止浏览器重用您的 Assets 。

关于javascript - 如何确保浏览器在更新后加载文件的最新版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27430557/

相关文章:

javascript - 如何将 javascript 变量放入 css

java - 获取 Apache-Tomcat 的错误 :JRE_HOME variable is not defined correctly when trying to run startup. bat

javascript - 在 javascript 中构建一个自迭代表?

javascript - 在图像上绘图时的像素问题 - html5 canvas

html - # 跨两个同级页面的链接不会滚动到右侧

javascript - 如何使用 jquery rails 获取 html 选择的下拉值?

apache - 使用 .htaccess 将所有 .php 请求重定向到 .html

apache - 共享文件夹 Docker

javascript - 如果没有此警报框,为什么我的代码无法工作?

javascript - 为什么我在动态生成按钮时在参数列表后出现错误 - 缺少 )?