谷歌浏览器不恰当地发送If-Modified-Since标头

时间:2012-03-22 20:59:40

标签: wordpress http google-chrome cache-control if-modified-since

运行Chrome v 17.0.963.83

登出仅在Chrome中发生的Wordpress网站存在问题,我认为我已经跟踪到了HTTP标头。

工作流程:您已登录。访问主页(也称为site root,aka /),该主页上有一个注销链接,其redirect_to将您发送回根目录。您会注意到响应是HTTP 200消息,其中包含(以及其他)以下响应:

Cache-Control:no-cache, must-revalidate, max-age=0
Date:Thu, 22 Mar 2012 20:22:53 GMT
Expires:Wed, 11 Jan 1984 05:00:00 GMT
Last-Modified:Thu, 22 Mar 2012 20:22:53 GMT

然后您使用页面上的链接注销。注销脚本302正确地将您重定向到主页。这次请求包括If-Modified-Since标头:

If-Modified-Since:Thu, 22 Mar 2012 20:22:53 GMT

这次,由于您已注销,因此缓存文件的Last-Modified日期早于您之前发送的动态页面,因此服务器会告诉您其304 Not Modified。问题是,Chrome应该永远不会问“If-Modified-Since”,因为之前对该地址的响应是

Cache-Control:no-cache, must-revalidate, max-age=0

有人知道如何回避这种行为吗?或者它是Chromium bug?

0 个答案:

没有答案
相关问题