Cache-Control 分析与生成器
解读浏览器和 CDN 的 Cache-Control 响应头,并按 TTL 生成
输入
粘贴 Cache-Control 值或完整的响应头。
结果
指令
功能说明
Cache-Control 分析与生成器解释浏览器和共享缓存(例如 CDN)如何处理一个响应。粘贴 Cache-Control 值或完整的响应头,即可查看每类缓存的新鲜期、当前时长、何时重新验证、谁可以存储该响应,以及附带建议的发现列表。生成模式会把 TTL 和选项转换为标头,并以相同方式分析结果。
新鲜度如何计算
依据 RFC 9111,共享缓存依次使用 s-maxage、max-age、Expires 减去 Date。浏览器依次使用 max-age、Expires 减去 Date。如果都没有,缓存可能根据 Last-Modified 估算启发式有效期;本工具会如实报告这一点,而不是猜测一个数字。当前时长来自 Age 标头,也可选择计入自 Date 标头起经过的时间。
常见误解
no-cache 并不表示不存储:它表示可以存储,但每次复用前都要重新验证。只有 no-store 才会阻止存储。private 让响应不进入共享缓存,但仍可进入浏览器缓存。s-maxage 只在共享缓存中覆盖 max-age。must-revalidate 禁止提供过期响应,这在大多数缓存中也会让 stale-while-revalidate 和 stale-if-error 失效。
解析规则
指令名不区分大小写,以逗号分隔;带引号的值(例如 private="Set-Cookie")可以包含逗号。重复的指令会被标记,并使用第一次出现的值。无效数字(例如 max-age=abc)会被视为错误,并使响应过期。未知扩展以提示形式列出,可能的拼写错误(例如 maxage)会给出建议。
隐私
解析和分析都在你的浏览器中运行。粘贴的标头不会被保存或发送到任何地方;本设备只会记住所选模式和 Date 选项。粘贴的标头中的 cookie 值永远不会显示在结果中。
