Nginx服务器如何启用gzip压缩功能
Sat 08 November 2025
最后更新于: 2015-12-11 Linux魔法师 0 Comment Nginx, 最新文章 压缩的好处 压缩可以减小HTTP回复的大小,从而降低web服务器的响应时间。gzip是web服务器广泛使用的压缩工具,可以将HTTP回复的大小降低到原来的50%~30%。既提高了网页的加载速度,又可以节约服务器流量。
Nginx服务器启用gzip压缩的方法 打开/etc/nginx/nginx.conf配置文件
sudo vi /etc/nignx/nginx.conf 将下面的文字粘贴到 http 部分,如果配置文件中有下面的文字,但前面有个#符号,那么将对应的#符号去掉就行了。
gzip on; gzip_comp_level 2; gzip_http_version 1.1; gzip_proxied any; gzip_min_length 1100; gzip_buffers 16 8k; gzip_types text/plain text/html text/css application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
Disable for IE < 6 because there are some known problems
gzip_disable "MSIE [1-6].(?!.*SV1)";
Add a vary header for downstream proxies to avoid sending cached gzipped files to IE6
gzip_vary on; 保存文件后,重启加载nginx配置文件:
sudo /etc/init.d/nginx reload 测试gzip压缩是否生效 输入如下命令,将域名替换成自己的域名。
curl --header "Accept-Encoding: gzip,deflate,sdch" -I http://www.linuxdashen.com 如果在输出结果中有Content-Encoding: gzip,说明gzip压缩功能在正常工作。
HTTP/1.1 200 OK Server: nginx/1.9.5 Date: Fri, 02 Oct 2015 16:42:22 GMT Content-Type: text/html; charset=UTF-8 Connection: keep-alive Vary: Accept-Encoding X-Pingback: http://www.linuxdashen.com/xmlrpc.php Content-Encoding: gzip 你也可以在http://www.gziptest.com或https://varvy.com/tools/gzip测试服务器的gzip压缩功能是否生效。在whatismyip.org网站上可以比较压缩前后的网页大小对比。在下图中可以看到,压缩前网页为96KB,压缩后为14.3KB,压缩效果非常明显。
gzip压缩效果图
找出未压缩的网页文件 在gtmetrix.com网站上,输入自己的域名后,gtmetrix便会测试网页的性能。在性能报告里,gtmetrix会列出没有经过gzip压缩的网页文件。如下图,我的网站有一个js文件和一个css文件没有压缩。
未压缩的网页文件
未压缩的原因 在/etc/nginx/nginx.conf文件中,我将gzip_min_length的长度设为1100B,文件必须大于或等于1100B才会被Nginx压缩。而在上图中可以发现,未压缩的js文件不足900B,未压缩的css文件不足800B,所以它们没有被压缩。将gzip_min_length设置为500后,重新加载Nginx配置文件,再重新用gtmetrix测试。结果所有的文件都被压缩了,在压缩这一项得分为100。
Category: @new