什么是缓存控制标头

Cache-control 是一个 HTTP 标头,用于??在客户端请求和服务器响应中指定浏览器缓存策略。策略包括资源的缓存方式、缓存位置以及过期前的最长期限(即?time to live)。

缓存控制标头被分解为指令,其中最常见的指令详述如下:

什么是缓存控制标头

来自 google.com 的 HTTP 响应标头示例

缓存控制:最大年龄

max-age 请求指令以秒为单位定义资源的缓存副本过期所需的时间量。过期后,浏览器必须通过向服务器发送另一个请求来刷新其资源版本。例如,?cache-control: max-age=120?表示返回的资源有效期为 120 秒,之后浏览器必须请求更新的版本。

缓存控制:无缓存

no-cache 指令意味着浏览器可以缓存响应,但必须首先向?源服务器提交验证请求。

缓存控制:无存储

no-store 指令意味着浏览器不允许缓存响应并且必须在每次请求时从服务器中提取它。此设置通常用于敏感数据,例如个人银行详细信息。

缓存控制:公共

公共响应指令指示资源可以由任何缓存缓存。

缓存控制:私有

私有响应指令表明资源是用户特定的——它仍然可以被缓存,但只能在客户端设备上。例如,标记为私有的网页响应可以由桌面浏览器缓存,但不能由内容分发网络 (CDN) 缓存。

额外的 HTTP 缓存标头

除了缓存控制之外,值得注意的 HTTP 缓存标头包括:

  • Expires??– 此标头指定缓存资源到期的固定日期/时间。例如,?Expires: Sat, 13 May 2017 07:00:00 GMT?表示缓存资源将于格林威治标准时间 2017 年 5 月 13 日早上 7 点过期。当存在包含 max-age 指令的缓存控制标头时,将忽略 expires 标头。
  • ETag??– 一种响应标头,根据令牌(例如,引号中的字符串)标识所提供内容的版本,该令牌?"675af34563dc-tr34"?在资源修改后发生变化。如果在发出请求之前令牌未更改,浏览器将继续使用其本地版本。
  • Vary??– 一个标头,用于确定必须与缓存资源匹配才能被视为有效的响应。例如,标头?Vary: Accept-Language, User-Agent?指定每个用户代理和语言的组合都必须存在一个缓存版本。

CDN 和缓存控制

缓存标头的多样性会使手动缓存管理不堪重负。CDN 允许通过用户友好的仪表板进行精细的缓存策略管理,从而使您无需手动调整各个标头。

除了简化缓存管理之外,CDN 还使用代理增强了浏览器缓存过程。代理缓存使内容更接近站点访问者,加速本地存储资源的交付。这对于浏览器尚未缓存站点内容的初次访问者尤其有益。

最后,更高级的 CDN 使用包括机器学习在内的高级自动化技术来缓存动态生成的内容和资源。这会优化您的缓存策略并进一步加快内容交付。

文章链接: /14357.html

文章标题:什么是缓存控制标头

文章版权:云服务器租用科技所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
IDC云库

什么是服务网格以及为什么需要它?

2022-12-14 14:17:08

IDC云库

分布式拒绝服务攻击(DDoS)的定义

2022-12-14 15:04:55

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧

云服务器租用科技 - 最新云主机促销服务器租用优惠

http://www.vxiaotou.com