美文网首页
HTTP 头部字段 Cache Control max-age

HTTP 头部字段 Cache Control max-age

作者: 华山令狐冲 | 来源:发表于2021-10-30 13:34 被阅读0次

禁掉缓存的情况:请求百度首页

开启缓存的情况下:


似乎没有什么变化。

再观察请求的头部字段:cache-control: max-age=0

标头 Cache-Control: max-age=0 暗示内容立即被认为是陈旧的(并且必须重新获取),这实际上与 Cache-Control: no-cache 相同。

首先了解 cache-control 的几种可能的值:

  • no-cache: 这会指示浏览器每次使用 URL 的缓存版本之前都必须与服务器重新验证。
  • no-store: 这会指示浏览器和其他中间缓存(如 CDN)从不存储文件的任何版本。
  • private: 浏览器可以缓存文件,但中间缓存( for example CDN cache)不能。
  • public: 响应可以由任何缓存存储。

Cache-Control 标头有两个方面。 一侧是它可以由网络服务器(又名“原始服务器”)发送的地方。 另一端是浏览器可以发送的地方(又名“用户代理”)。

When sent by the origin server

我相信 max-age=0 只是告诉缓存(和用户代理)响应从一开始就已经过时,因此他们应该 (SHOULD) 在使用缓存副本之前重新验证响应(例如,使用 If-Not-Modified 标头).

而 no-cache 告诉他们在使用缓存副本之前必须 (MUST) 重新验证。

NO-CACHE 的含义:

缓存不得在没有与源服务器成功重新验证的前提下,直接使用响应来满足后续请求。这允许源服务器阻止缓存,即使缓存已配置为向客户端请求返回陈旧的响应。

When sent by the user agent

如果用户代理使用 Cache-Control: max-age=0(又名“端到端重新验证”)发送请求,那么沿途的每个缓存都将重新验证其缓存条目(例如,使用 If-Not-Modified header)一直到源服务器。 如果回复是 304(未修改),则可以使用缓存的实体。

另一方面,使用 Cache-Control: no-cache(又名“端到端重新加载”)发送请求不会重新验证,并且服务器在响应时不得使用缓存副本。

更多Jerry的原创文章,尽在:"汪子熙":


相关文章

  • HTTP 头部字段 Cache Control max-age

    禁掉缓存的情况:请求百度首页 开启缓存的情况下: 似乎没有什么变化。 再观察请求的头部字段:cache-contr...

  • Django 缓存与信号

    缓存 缓存会在响应头中加一个字段:Cache-Control: max-age=5 Expires 首部字段也可以...

  • http缓存

    如何让一个资源可缓存 HTTP 1.1 风格的Cache-Control 响应头中的 max-age指令HTTP ...

  • HTTP缓存之Cache-Control、Expires

    一、缓存控制Cache-Control 它如何添加呢?通过Cache-Control响应头设置max-age=xx...

  • Web Server 设置缓存响应字段的一些推荐方案

    前端开发人员的一个常见误区就是,看到下图这种没有附带 cache control 的 HTTP 响应头部字段,就误...

  • http缓存

    1.缓存头部控制字段 Cache-Control 请求/响应头,缓存控制字段 no store:所有内容都不缓存。...

  • 浏览器缓存机制

    浏览器通过HTTP头部的字段来控制文件的缓存:要不要缓存以及缓存的过期时间。 Cache-Control/Expi...

  • HTTP的那些事儿

    缓存机制 一个栗子 --Cache-Control: max-age=0 缓存 可是时效为0--Cache-Co...

  • HTTP 缓存

    强缓存 HTTP/1.0 使用的是 Expires 字段,HTTP/1.1 使用的是 Cache-Control ...

  • HTTP缓存

    1. 与HTTP缓存有关的header字段 1.1 Cache-Control 缓存控制注:Cache-Contr...

网友评论

      本文标题:HTTP 头部字段 Cache Control max-age

      本文链接:https://www.haomeiwen.com/subject/enrrnltx.html