怎么能有效强制清除掉缓存?

有个升级版本的按钮,切换了版本后有些配置参数是不显示的,因为缓存还是显示了,怎么能有效在切换版本之后强制清除掉缓存
求救各位大佬,这种怎么处理

阅读 3.1k
3 个回答

你的要做版本控制, 这个和挺合适的:

  1. 添加时间戳或随机数参数:在资源 URL 后面添加一个随机数或时间戳参数,以确保浏览器每次访问到的 URL 都不同,从而使浏览器无法从缓存获取资源。
  2. 修改文件名称:对于某些资源(如 CSS、JS 文件、图像等),将资源的文件名称更改为新的名称,从而使浏览器加载新的资源。
  3. 使用 meta 标签:在 HTML 的 head 标签中添加以下 meta 标签来禁用浏览器缓存:

    <meta http-equiv="Cache-control" content="no-cache, no-store, must-revalidate">
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="Expires" content="0">

    上述 meta 标签将告诉浏览器不缓存当前页面。

  4. 修改响应头:在服务器端可以修改响应头,添加类似于 Cache-Control: no-cache, no-store 的头信息,来告诉浏览器不要缓存该资源。

这个是另一个回答

https://segmentfault.com/q/1010000043648574/a-1020000043648585

不同浏览器的具体操作略有不同,一般可以通过设置浏览器选项或者使用快捷键实现。具体方法可以在网上搜索对应浏览器的缓存清除方法。

HTTP服务配置不缓存就行了。比如说Nginx的配置就可以调整为如下:

http{
  server{
    listen 80;
    server_name yourdomain.com;
    charset utf-8;
+    add_header Cache-Control no-store;
+    expires -1;

    location xxx {
       ...
  }
  ...
}

之前在微信上面遇到过这个情况,写过一篇笔记 页面的缓存到底应该怎么做?
然后另外社区里面也有类似的问题的 vue 打包后 在 iframe 的缓存如何解决?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题