Squid 未重新加载应缓存的页面

Squid 未重新加载应缓存的页面

我已经与此斗争了一段时间,但我似乎无法理解为什么请求没有被缓存。

响应标头:

HTTP/1.1 200 OK
Date: Tue, 20 Aug 2013 16:42:12 GMT
Server: Apache/2.2.23 (Unix) mod_ssl/2.2.23 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 mod_perl/2.0.6 Perl/v5.8.8
Expires: Tue, 20 Aug 2013 22:32:41 GMT
Pragma: public
Cache-Control: max-age=21029, public, must-revalidate, proxy-revalidate
X-Powered-By: W3 Total Cache/0.9.3
Vary: 
Last-Modified: Tue, 20 Aug 2013 16:32:41 GMT
Content-Type: text/html; charset=UTF-8
X-Cache: MISS from proxy
X-Cache-Lookup: MISS from proxy:3128
Transfer-Encoding: chunked
Via: 1.1 proxy (squid/3.2.13)
Connection: keep-alive

我正在查看的关键字段是:Date、Expires、Pragma、Cache-Control、X-Cache 和 X-Cache-Lookup

这告诉我“嘿,请缓存这个”但是 squid 在重复请求时只是说“MISS”。

相关的refresh_pattern是:

refresh_pattern . 0 20% 4320 reload-into-ims

我错过了什么?

答案1

Squid 有一个错误,它不缓存带有“Vary”标头的请求 -这个问题对该问题进行了详细描述,并提供了更多信息,但以下是其简短版本:

通过分析日志,我能够确定存储期间(即初始请求)使用的哈希查找键与后续请求期间使用的哈希查找键不同。这就是后续查找缓存未命中的原因。

截至目前,该错误已修复

相关内容