点击Chrome中地址栏中的回车键,我两次访问this page。 css文件似乎已过期:cache-control max-age是5天,但最后修改是5天前(我在中国,现在时间是2016年10月24日下午12:16)。提前谢谢。
整个请求标题:
Accept:text/css,*/*;q=0.1
Accept-Encoding:gzip, deflate, sdch
Accept-Language:zh-CN,zh;q=0.8
Host:c.58cdn.com.cn
Proxy-Connection:keep-alive
Referer:http://m.58.com/bj/zufang/?58ihm=m_house_index_zufang&58cid=1&PGTID=0d200001-0000-15fd-aae2-e605031f9c08&ClickID=1
User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1
整个响应标题:
Age:69061
Cache-Control:max-age=432000
Connection:keep-alive
Content-Encoding:gzip
Content-Type:text/css
Date:Wed, 23 Nov 2016 08:43:18 GMT
Last-Modified:Fri, 18 Nov 2016 08:38:39 GMT
Transfer-Encoding:chunked
X-Cache:HIT from www.matocloud.com
答案 0 :(得分:1)
这是因为Last-Modified字段的GMT时区。这与您当地的时区不同。
Last-Modified字段的时间为08:38:39 GMT
。但是,当前时间仅为04:22:54 GMT
。
您可以在此处查看当前的GMT时间:http://time.is/GMT
编辑:由于某种原因,响应标头中的日期字段不准确。时间尚未达到08:43:18 GMT
。
答案 1 :(得分:0)
我认为可能是因为if-modified-since效果。 浏览器向缓存服务器发送请求,并使用if-modified-since缓存请求,并且服务器发送OK,以便缓存直接发送带有命中的xcache标头
答案 2 :(得分:0)
现在我知道为什么last-modified
不起作用 - cache-control
的优先级高于last-modified
。
因此,如果我在5天之前访问css,浏览器将始终从缓存中加载它,这正是cache-control
的用途。