【发布时间】:2012-08-28 18:44:35
【问题描述】:
有人知道我在哪里可以查看这些信息吗?我很确定 IE 4 默认启用了“使用 HTTP 1.1”参数,并关闭了“通过代理连接使用 HTTP 1.1”。从here 获得此信息。我假设以后的版本也会启用“使用 HTTP 1.1”。旧版本的 IE 怎么样? Firefox、Opera、Safari 等呢?
【问题讨论】:
有人知道我在哪里可以查看这些信息吗?我很确定 IE 4 默认启用了“使用 HTTP 1.1”参数,并关闭了“通过代理连接使用 HTTP 1.1”。从here 获得此信息。我假设以后的版本也会启用“使用 HTTP 1.1”。旧版本的 IE 怎么样? Firefox、Opera、Safari 等呢?
【问题讨论】:
过去 10-13 年间所有常见的桌面浏览器(Netscape/Mozilla、Internet Explorer 等)都支持 HTTP/1.1。 Internet Explorer 3.0 和 Netscape 2.0 至少早在 1996 年就支持它 (Wikipedia agrees with this)。
特别需要注意的是,HTTP HOST 标头需要 HTTP/1.1,如果您想在单个 IP 地址上为不同域的不同网站提供服务,则需要使用 HTTP/1.1。因此,如果 HTTP 客户端不支持它,用户将无法访问许多网站。
大约 9 年前,我遇到了一个不支持它的旧智能手机浏览器,但这是我能想到的最后一个例子,我什至听说过一个不支持的 HTTP 客户端。
我想说的是,即使您在做一些相当深奥的事情,今天也不需要真正考虑缺乏对 HTTP/1.1 的客户端支持(尽管我仍然记得 10 多年前这是一个令人头疼的技术支持问题,试图让人们从 Netscape 1.x 升级)。
如果您正在编写代理,您可能需要考虑一下,但即使如此,我也看不出它会导致任何现实世界的问题,因为它对于现代浏览来说非常重要。如果有人正在运行与 Mosaic 1.0 或 Netscape 1.1 一样旧(或有限)的浏览器,那么他们访问内容可能会遇到更大的问题。
【讨论】:
Host 在成为 1.1 的一部分之前是 1.0 的非标准补充。不管 Wikipedia 怎么说,第一个 1.1 RFC 是在 97 年发布的(2068 年被 2616 年淘汰),但 NN2 和 IE3 确实已经有了 Host 标头。
大多数现代网络浏览器(至少从版本 5 开始的 IE,从版本 2 开始的 Firefox)甚至没有选择使用任何东西除了 HTTP/1.1。嗯,他们可能会,但它会被很好地隐藏起来。
EDIT:在 Google 上找到了这个,它提供了部分信息: http://schroepl.net/projekte/mod_gzip/browser.htm 根据该页面,IE4+、Netscape 6+、Opera 4+ 和(我认为)所有版本的 Firefox 都支持 HTTP 1.1。
【讨论】: