Rumah >pembangunan bahagian belakang >tutorial php >javascript - web项目发版如何解决静态资源JS CSS 缓存问题

javascript - web项目发版如何解决静态资源JS CSS 缓存问题

WBOY
WBOYasal
2016-06-06 20:21:041576semak imbas

服务器已设置了缓存,但是发布版本,JS CSS 如果有修改,没有加版本号,如果客户端的浏览器不强制清除所有缓存,还是使用的旧的缓存资源。如何解决静态资缓存本问题?

YII2 使用的是这样的思路吗?每次都检测JS CSS文件的最后修改时间?
如果跟缓存文件的一样,那么不重新生成,否则重新生成缓存的JS CSS文件?

回复内容:

服务器已设置了缓存,但是发布版本,JS CSS 如果有修改,没有加版本号,如果客户端的浏览器不强制清除所有缓存,还是使用的旧的缓存资源。如何解决静态资缓存本问题?

YII2 使用的是这样的思路吗?每次都检测JS CSS文件的最后修改时间?
如果跟缓存文件的一样,那么不重新生成,否则重新生成缓存的JS CSS文件?

yii的方案就很好,一般都是通过加版本号解决

可以看看laravel的实现。在elixir那部分。原理是读取一个映射文件。这个文件是gulp生成的

用gulp-rev-hash来通过hash区分。

可以使用fis3.为资源文件加md5后缀做区分

md5生产摘要,,作为文件的后缀。。gulp/grunt或者webpack都用相应的方法解决

1、版本号
2、hash命名

建议你看看这个
https://www.zhihu.com/question/20790576
解决方案上推荐fis~不过RoR,Django这种也都有自己的解决方案,yii2不清楚

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php怎么去掉数组键名Artikel seterusnya:用php怎么实现oauth2