HTTP 1.0 和 HTTP 1.1 的区别


  • 连接
    • 1.0: 非持久连接, 每次请求都需要重新建立 TCP 连接
    • 1.1: 持久连接, 多个请求可以复用一个 TCP 连接
  • host 字段
    • 1.0: 认为每台服务器只有一个网站,请求时默认只请求那个网站
    • 1.1: 服务器因为虚拟主机技术的存在可以实现同一个 IP 托管多个域名网站, 又因为客户端请求时域名会被 DNS 解析成 IP 再与服务器通信, 服务器只知道客户端请求了自己的 IP, 并不知道请求的原始 URL,在同一个 IP 下托管多个域名网站的情况下无法只是根据 IP 判断出客户端请求的网站,因此需要 host 字段进行区分
  • 请求方法
    • 1.0: 只支持 GETPOSTHEAD
    • 1.1: 新增 PUTDELETEOPTIONS
  • 浏览器缓存
    • 1.0: 使用 If-Modified-Sinceexpires 字段进行缓存控制
    • 1.1: 新增了 EtagIf-Unmodified-SinceIf-MatchIf-None-Match 字段,提供更细粒度的缓存控制