完美解决 - 前端发版后浏览器缓存问题
一、简介
-
开发完发布新版本后,在有些电脑上总需要强刷才能获取到最新版本的内容,太恶心了。
-
浏览器缓存(
Browser Caching)是为了节约网络的资源加速浏览,浏览器在用户磁盘上对最近请求过的文档进行存储,当访问者再次请求这个页面时,浏览器就可以从本地磁盘显示文档,这样就可以加速页面的阅览。 -
附:前端缓存详解,看了这篇更容易理解缓存配置的概念,浏览器缓存主要有两类:
协商缓存和彻底(强)缓存。例如:
program、cache-control 和expires都是前端缓存的关键字段,优先级是pragma>cache-control>expires,pragma是旧产物,已经逐步抛弃,有些网站为了向下兼容还保留了这个字段。
二、解决方案
1、在 .html 页面加 meta 标签
<meta http-equiv="pragram" content="no-cache"><meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate"><meta http-equiv="expires" content="0">
2、后端 nginx 配置,让 index.html 不缓存
vue 默认配置,打包后 css 和 js 的名字后面都加了哈希值,不会有缓存问题,但是 index.html 在服务器端可能是有缓存的,需要在服务器配置不让缓存 index.html。
location = /index.html {add_header Cache-Control "no-cache, no-store";}
posted on 2024-01-27 11:21 zyp_java_net 阅读(1091) 评论(0) 收藏 举报
浙公网安备 33010602011771号