← 全部文章

技术与生活 / 一篇记录

缓存策略要跟着内容生命周期走

静态资源和登录后的个性化页面不应共用相同缓存设置。

长期不变的指纹资源,与随发布更新的 HTML,拥有不同的失效需求。缓存指令需要同时考虑客户端与共享代理,不能仅按文件大小决定缓存多久。

从一个例子看起

域名 example.com 仅用于说明,核查自己的网站时请替换目标地址。

curl -I https://example.com/assets/app.css

检查缓存指令,并区分浏览器缓存与共享缓存。

排查时再往前走一步

发布新版本后用旧浏览器会话访问一次,确认入口页面能发现新资源。还要检查缓存命中后的响应,不能只测试第一次访问的行为。

private 与 no-store 处理的问题不同:前者限制共享缓存,后者要求不存储响应。对于包含个人信息的页面,应根据真实需求选择,而不是因为它也是 HTML 就沿用静态站的缓存策略。

缓存时间很长的资源应配合内容指纹文件名。

参考:HTTP 文档。

搜索文章

输入关键词,找回一篇记录。