以vue为例,vue在打包的时候,css和js名字都加了哈希值,所以改变后打包生成的js和css是惟一的,页面申请的是新资源,不会有缓存问题。然而入口文件index.html会因为缓存造成更新问题,如果咱们更新了,然而浏览器应用的是缓存,就会呈现问题。所以须要对入口文件设置不使缓存,须要每次去服务器验证文件是否批改
应用nginx反向代理,在nginx.conf文件的对应server中设置,目前我本人实际出的可行的一种写法是:
server {
listen 80;
server_name 域名;
root 文件目录;
index index.html;
location / { // 不加这一句,会呈现nginx欢送页面,无奈正确加载资源
try_files $uri /index.html;
}
location ~ .*.(html)$ { // 对html文件限度缓存
add_header Cache-Control no-store; // 不缓存
// 或者用add_header Cache-Control no-cache;代替下面那一句,协商缓存
add_header Pragma no-cache;
}
}