缓存可以降低延迟,也可能让修复后的内容长期不可见。策略需要根据资源是否可变、是否包含用户数据分别设计。

可变页面使用再验证

HTML 通常适合较短缓存或 no-cache,允许浏览器保存副本但每次使用前向服务器确认。ETag 可以减少未变化内容的传输。

指纹资源长期缓存

文件名包含内容哈希的 CSS、脚本和图片可以使用较长 max-age 与 immutable。内容改变时生成新 URL,而不是覆盖原文件。

私有数据禁止共享

带用户身份的响应应明确 private 或 no-store。配置 CDN 前检查 Vary 和授权头,避免不同用户共享缓存对象。