缓存控制max-age元标记未注册

问题描述 投票:8回答:1

我把它放在我的头部。它出现在浏览器的页面源中。

<meta http-equiv="Cache-Control" content="max-age=1209600">

但是,当我查看Chrome扩展程序Live HTTP Headers时,它会说明以下内容。

Cache-Control: max-age=0
Content-Encoding: gzip
Content-Length: 5849
Content-Type: text/html; charset=utf-8
Date: Sat, 05 Apr 2014 04:29:16 GMT
Expires: Sat, 05 Apr 2014 04:29:16 GMT
Last-Modified: Sat, 05 Apr 2014 03:33:19 GMT

max-age没有注册。我已经清空了浏览器缓存,但它没有任何区别。

有什么解释吗?顺便提一下,This就是这个网站。

更新:

Firebug同样记录了Cache-Control: max-age=0

谷歌也明确here max-age覆盖Expires标题(我没有设置),你不需要两者。

http-headers meta-tags cache-control html-head
1个回答
7
投票

当您使用Live HTTP Headers等工具时,它们会显示浏览器发送的实际HTTP标头。他们使用meta标签来模拟HTTP标头是一个不同的问题。我们可以预期任何冲突都会被解决,以支持实际的标头。 (这已在Content-Type标头的HTML规范中规范地指定。)

要控制缓存,您应该(至少主要)使用服务器配置。见Caching Tutorial for Web Authors and Webmasters

© www.soinside.com 2019 - 2024. All rights reserved.