频繁修改的静态文件如何较好地部署到服务器上?
本人搞前端的,将静态文件(修改较频繁)在部署到服务器上时,遇到了如下两难的问题:
-
打包的文件始终使用静态文件名,如
index.js
、test.xml
时,浏览器必须要强制刷新才能更新缓存,在移动端如微信 QQ 更是麻烦; -
使用基于内容的 hash 文件名,如
index.fd1s20.js
时,不好清理服务器中废弃的文件。
请大佬指点
----------------------- 以下是精选回复-----------------------
答:抛砖,HTTP 响应设置不缓存
答:加版本号参数
答:应用的时候尾巴加个随机字符参数试试
比如 src="/js/index.js?random=19322873283939"
答:而且,有修改的文件需要更新缓存,没有修改的文件不需要更新,如果手动修改 url 的话也是个麻烦事,可能错漏。
答:使用方案 2,然后写一个脚本定时清理,发现文件名相同,hash 后缀不同的文件,移除修改时间比较旧的。
答:检查名字+修改时间较旧的移除+1
0条评论