Open shfshanyue opened 4 years ago
一句话:gzip 的核心是 Deflate,而它使用了 LZ77 算法与 Huffman 编码来压缩文件,重复度越高的文件可压缩的空间就越大。
gzip
Deflate
LZ77
Huffman
因此 gzip 用于 HTTP 文件传输中,比如 JS、CSS 等,但一般不会压缩图片。在 HTTP Response 报文中,用 Content-Encoding 指明使用 gzip 压缩,而以下响应头在大部分生产环境的响应报文中都可以看到!比如你现在立刻马上可以打开我的网站或者百度试一试。
Content-Encoding
# Request Header Accept-Encoding: gzip, deflate, br # Reponse Header Content-Encoding: gzip
gzip 一般在反向代理那一层,如 nginx 进行处理,直接使用 C 语言编写,具有更好的性能。
nginx
在 nginx 开启 gzip: 配置可参考 gzip module
gzip on;
一句话:
gzip
的核心是Deflate
,而它使用了LZ77
算法与Huffman
编码来压缩文件,重复度越高的文件可压缩的空间就越大。因此
gzip
用于 HTTP 文件传输中,比如 JS、CSS 等,但一般不会压缩图片。在 HTTP Response 报文中,用Content-Encoding
指明使用 gzip 压缩,而以下响应头在大部分生产环境的响应报文中都可以看到!比如你现在立刻马上可以打开我的网站或者百度试一试。gzip
一般在反向代理那一层,如nginx
进行处理,直接使用 C 语言编写,具有更好的性能。在
nginx
开启gzip
: 配置可参考 gzip moduleLZ77
Huffman
相关阅读