'must-revalidate'和'proxy-revalidate'之间有什么区别?

时间:2015-03-30 04:07:51

标签: http cache-control

据我所知,这两个指令都意味着缓存服务器会要求原始服务器从客户端浏览器重新验证请求。这两个指令有什么区别?

1 个答案:

答案 0 :(得分:4)

RFC 7234, section 5.2.2.7,解释说:

  

“proxy-revalidate”响应指令的含义与      必须重新验证响应指令,但它不适用于      私人缓存。

(强调补充。)An earlier version of the spec接着描述了如何使用它:

  

它可以用于对经过身份验证的请求的响应,以允许用户的缓存存储并稍后返回响应,而无需重新验证它(因为它已经被该用户验证过一次),同时仍然需要代理服务许多用户每次都要重新验证(以确保每个用户都经过身份验证)。请注意,此类经过身份验证的响应还需要公共缓存控制指令,以便允许它们进行缓存。