关于index.html被缓存问题

关于web的缓存策略,推荐这篇文章:点击css

在开发时候常常遇到一个问题,咱们根据版本号去控制缓存问题,当咱们发布新版本,使用心得版本号的时候,发现html里面引用的版本号倒是旧的版本号 ,原来是该html文件被缓存了,不少时候咱们设置禁止html文件被缓存,但依然会出现被缓存的状况。html

 为何咱们有时候设置了<meta http-equiv="Cache-control" content="no-store">这种强制性禁止缓存,咱们的页面依然被缓存了?nginx

由于咱们只关注了客户端,却忽略了服务器端的设置,若是服务器端nginx设置了Cache-control,他是会覆盖掉咱们页面中设置的的Cache-control的,因此有时候咱们会发现明明css和js已经加了版本号,可是html文件里面引用的依然是旧的css和js文件,web

由于服务器的缓存机制,旧的css和js并不会被当即删除,这种状况下, 咱们须要和服务器端(或者运维)人员协商一个统一的缓存策略,以保证更新能够及时获得效果,缓存

若是沟通不顺利,或者想马上看到效果,能够试试<meta http-equiv="Pragma" content="no-cache"/>  若是服务器端没有去设置Pragma,咱们设置的Pragma依然有效。服务器

相关文章
相关标签/搜索