2011-06-06 95 views
24

我正致力于让我的网站支持eTag/If-None-Match浏览器缓存,但我不确定哪些浏览器支持/不支持。任何人都可以指出我的名单?我无法想象它是普遍的,但我还没有发现任何支持这种说法的东西。浏览器对eTags的支持

欢呼声,
迈克

回答

19

如果 - 无 - 匹配在HTTP 1.1指定(1999年6月):

Accordi ng到Wikipedia:

到1996年3月,在Arena,Netscape 2.0,Netscape Navigator Gold 2.01,Mosaic 2.7,Lynx 2.5和Internet Explorer 3.0中支持预标准HTTP/1.1。最终用户采用新浏览器的速度非常快。 1996年3月,一家网络托管公司报告称,互联网上使用的浏览器中超过40%的浏览器符合HTTP 1.1标准。同一家网络托管公司报告说,到1996年6月,访问其服务器的所有浏览器中有65%符合HTTP/1.1标准。在HTTP/1.1标准在RFC 2068中定义在1月正式发布1997年的改进和更新HTTP/1.1标准进行了下RFC 2616在1999年6月

发布在我的经验中,普遍使用的所有浏览器,IE5.5 +,Safari,Chrome,Opera和Firefox都支持ETag/If-None-Match标头。

但是,还有一些其他头文件会阻止这些浏览器尊重etag ...所以如果它不适合你,我会仔细检查其他头文件,当他们请求资源时发送回客户端。

你有什么特别的理由来问这个问题吗?也许如果你有一个特定的实例你有问题,我们可以看看其他头文件?

但是这些头文件已经存在很长时间了,它们是网络中广泛使用的关键缓存机制。

+0

这不是我遇到的问题。我以每个用户为基础生成动态资产文件,我的计划是将其缓存在本地,以便在用户每次需要该文件时都不需要重新生成它们。所以这听起来像我可以实施一个ETag /如果不匹配的解决方案,我会适用于所有主流浏览器,对吗? – Swift 2011-06-06 05:28:38

+2

是的。我有一些大的javascript文件,有时会改变一下〜1MB),我使用etag来节省带宽 - 而且我从来没有遇到任何不支持它的浏览器。 – Steve 2011-06-06 05:32:08

+0

@Pacerier,我非常怀疑这种情况。如果您有HTTP请求/响应日志来备份您所说的话,请发布一个新答案,并留下我对此答案的评论,以便我可以查看它,因为我很乐意看到此类行为。 – Steve 2012-07-24 17:06:15