Page 153 - Web性能权威指南
P. 153

Content-Type: text/plain
                   Content-Length: 137582
                   Expires: Thu, 01 Dec 1997 16:00:00 GMT
                   Last-Modified: Wed, 1 May 1996 12:45:26 GMT
                   Server: Apache 0.84

                  (纯文本响应)
                  (连接关闭)

               ➊ 请求行中包含 HTTP 版本号,随后是请求首部
               ➋ 响应状态,后跟响应首部

               上面列出的交换信息并未展示出 HTTP  1.0 的所有功能,但却能说明该协议的关键
               变化:

               •   请求可以由于多行首部字段构成;
               •   响应对象前面添加了一个响应状态行;
               •   响应对象也有自己的由换行符分隔的首部字段;
               •   响应对象不局限于超文本;
               •   服务器与客户端之间的连接在每次请求之后都会关闭。

               请求和响应首部都使用 ASCII 编码,但响应对象本身可以是任何类型:HTML 文
               件、纯文本文件、图片,或其他内容类型。事实上,HTTP 中的“HTT”(Hypertext
               Transfer,超文本传输)在协议出现后不久就已经用词不当了。在实践中,HTTP 迅
               速发展为超媒体传输协议,但最初的名字则沿用至今。

               除了媒体类型协商,RFC 还解释了很多已经被实现的其他功能:内容编码、字符集
               支持、多部分类型、认证、缓存、代理行为、日期格式,等等。


                          今天,几乎所有 Web 服务器都支持,而且以后还会继续支持 HTTP 1.0。除
                          此之外,剩下的你都知道了。但 HTTP 1.0 对每个请求都打开一个新 TCP
                          连接严重影响性能,这一点可以参考 2.1 节“三次握手”和 2.2.2 节“慢启
                          动”。


               9.3 HTTP 1.1:互联网标准


               将 HTTP 转为 IETF 正式互联网标准的工作,与通过 RFC  1945 说明解释 HTTP  1.0
               是并行展开的,从 1995 年到 1999 年,大致经历了 4 年时间。事实上,就在 HTTP
               1.0 发布大约 6 个月之后,也就是 1997 年 1 月,定义正式 HTTP  1.1 标准的 RFC
               2068 也发布了。又过了两年半,即到了 1999 年 6 月 RFC  2616 发布,又在标准中
               集合了很多改进和更新。


               138   |   第 9 章
   148   149   150   151   152   153   154   155   156   157   158