对于index.html这个特殊的载体html资源,建议设置Cache-Control: max-age=0以及Last-Modified和Etag字段。这样每次打开页面,浏览器都会请求服务器询问index.html是否有更改。有更改则下载最新内容,返回200。无更改则返回304,浏览器使用缓存加载。这就保证了index.html的内容都是最新的,即内部的css和js都引用了最新的url地址。 最后上线部署时,作为载体的index.html一定要最后部署。尤其是当我们的静态资源部署在cdn上时,必须确保cdn上的静态资源都部署完毕且生效的情况下再更新index.html,以防在我们部署过程中影响用户的正常访问。 四、结语 web缓存实际上除了浏览器缓存,还有代理缓存、网关缓存、CDN、反向代理缓存等。我们在构建应用时,需要充分利用各类型缓存来提高网站性能,提升用户体验。 本文作者:操伟伟(点融黑帮) 点融大前端团队,高级前端开发工程师。5年多的前端开发经验,中间还做过将近4年的电商。相比于做生意,还是更喜欢写代码。 (责任编辑:本港台直播) |