Squid 是否应在反向代理模式下尊重 no-cache 和 s-maxage?

Squid 是否应在反向代理模式下尊重 no-cache 和 s-maxage?

我正在使用 Squid 2.7.STABLE9,它是从源代码编译的。

我的理解no-cache是,在提供资源的缓存副本之前,缓存必须与原始服务器重新验证,并且这通过 If-Modified-Since 标头进行。

我的理解s-maxage是,共享缓存/代理应该将资源视为在给定的秒数内是新鲜的。

我的期望是,它Cache-Control: no-cache, s-maxage=300应该触发 Squid 将资源视为 5 分钟的新鲜度,并且应该在提供缓存版本之前与原始服务器重新验证。

我是否正确理解了这些标头的用法? 如果是这样,我是否应该期望此行为 Squid 在配置为反向代理时执行此行为?

答案1

在您的示例中,no-cache 条目未指定字段名称,因此本节适用:

无缓存 如果 no-cache 指令未指定字段名称,则缓存不得使用响应来满足后续请求,除非与原始服务器成功重新验证。

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.1

相关内容