通过nginx部署的静态文件,上线后没有实现实时刷新,需要手动清除客户端缓存,给开发和测试带来困扰。通过修改nginx配置文件,实现静态文件不缓存。
1 通过nginx.conf配置文件实现控制浏览器缓存。
2 expires max-age 两个参数实现缓存控制。
3 参数作用域及生效。
链接1 关于http请求响应头 https://blog.youkuaiyun.com/jek123456/article/details/71514195
链接2关于浏览器缓存机制 https://www.cnblogs.com/shixiaomiao1122/p/7591556.html
链接3 关于缓存验证
nginx配置
location ~* .(html|htm)$ {
root /releaseboss2c;
index index.html index.htm;
expires 1s;
}
静态文件这边 expires 设置成 1s
注:
1 指定“Expires”的值为当前服务器时间-1s,即永远过期。
expires使用了特定的时间,并且要求服务器和客户端的是中严格同步。
2 Cache-Control是用max-age指令指定组件被缓存多久。
3 如果不想让代理或浏览器缓存,加no-cache参数或private参数:
可以在不同的域中加入参数
add_header Cache-Control no-cache;
add_header Cache-Control private;
作用域生效的优先级别
该博客介绍了如何通过修改nginx配置文件来避免上线后静态文件缓存问题,从而解决开发和测试过程中需要手动清除客户端缓存的不便。主要涉及expires和Cache-Control两个参数,通过设置expires为1秒使得浏览器认为文件已过期,Cache-Control添加no-cache或private参数以防止代理和浏览器缓存。此外,还提供了关于http请求响应头和浏览器缓存机制的相关链接供进一步阅读。
6808

被折叠的 条评论
为什么被折叠?



