2012-02-07 145 views
36

我刚才查了一下gzipDeflate,发现Deflate比较好。为什么主要网站使用gzip?

但是当我检查谷歌,Facebook和StackExchange的响应头他们正在使用GZIP人。为什么他们使用gzip而不是Deflate?

+3

显然Apache默认发送gzip:http://stackoverflow.com/a/3577932/82769;听起来不同的是每个请求只有18个字节,所以对于我们大多数人来说这不是紧迫的问题。 – 2012-02-07 02:50:13

回答

103

这显然是由于选择名称“Deflate”导致的误解。 HTTP标准明确规定,“放气”的真正含义zlib的格式:

The "zlib" format defined in RFC 1950 [31] in combination with 
    the "deflate" compression mechanism described in RFC 1951 [29]. 

但是早期Microsoft服务器会错误地提供原料放气的“放气”(即只RFC 1951年的数据,而不zlib的RFC 1950年包装)。这造成了问题,浏览器必须尝试两种方式,最后只使用gzip更加可靠。

使用gzip而不是“Deflate”(zlib)的带宽和执行时间的影响相对较小。所以我们现在和现在都可能保持下去。

对于gzip,差值是12个字节,计算CRC而不是Adler-32的CPU时间略多。

+37

没有像直接从马的嘴里得到你的答案!谢谢马克。 – 2012-04-30 12:14:23

+0

再次看到马克! – lgw150 2015-12-30 06:56:18