HTTP“Expires”标头在Chrome中无效

时间:2012-07-19 11:10:41

标签: google-chrome http-headers cache-control

我的系统是Windows 7 x64,Chrome 20.0.1132.57 m。

在我的HTTP响应标题中,我有:

Cache-Control: public, max-age=1000
Expires: *some date*

在IE& FF,页面缓存在本地,当我尝试通过键入URL并按Enter键再次访问时,不会发送任何请求并正确显示页面。但在Chrome中,它始终使用以下标头向服务器发送请求:

Cache-Control: max-age=0

我不希望客户端向我的服务器发送请求然后回复304.我想保存往返时间。

2 个答案:

答案 0 :(得分:15)

测试时要小心。我注意到在Chrome版本20中,如果我按F5重新加载页面,那么在网络面板中我会看到新的请求。 如果我将光标放在标题栏上,在当前页面url之后,然后点击回车,我从缓存中获取资源,将whitch标头设置为缓存。

最好只使用最大年龄。 Max age和Expires相同,但在最大年龄,您可以指定持续时间。

看到这个: http://betterexplained.com/articles/how-to-optimize-your-site-with-http-caching/ 方法3和方法4。

答案 1 :(得分:3)

我遇到了类似的问题,我发现如果您使用新的Chrome标签发出请求,它就会起作用。