安装完Nginx之后,默认的配置文件default.conf是没有开启gzip压缩的,这会非常浪费带宽,尤其对于那些按流量计费的主机,开启压缩是必须的,下面是本站开启页面压缩之后的信息:
协议类型 | HTTP/1.1 200 OK | 网页是否压缩 | 是 |
页面类型 | text/html; charset=UTF-8 | 原网页大小 | 13805 |
服务器类型 | nginx/1.10.3 | 压缩后大小 | 10 |
程序支持 | 压缩比(估计值) | 99.93% |
配置很简单,大家可以直接copy下面的代码,加到Nginx站点配置文件的server段:
#启用 gzip 压缩功能
gzip on;
#最小压缩的页面,默认值是0,不管页面多大都压缩
gzip_min_length 1024;
#设置系统获取几个单位的缓存用于存储gzip的压缩结果数据流,16 64k代表以64k为单位,安装原始数据大小以64k为单位的16倍申请内存
gzip_buffers 16 64k;
#压缩级别,1-9,越大越消耗CPU,一般设置为3就可以了
gzip_comp_level 3;
#禁用IE6的gzip压缩,IE6的某些版本对gzip的压缩支持很不好,会造成页面的假死
gzip_disable "MSIE [1-6].";
#什么类型的页面或文档启用压缩
gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php image/jpeg image/gif image/png;
#和http头有关系,加个vary头
gzip_vary on;
重启或者reload自己的Nginx服务.
然后用浏览器访问自己的站点,在响应头里可以看到网站已经启用gzip压缩了
Connection:keep-alive
Content-Encoding:gzip <------- look,就是这里
Content-Type:text/html; charset=UTF-8
Date:Mon, 27 Feb 2017 12:18:31 GMT
Link:<https://apelogs.com/?rest_route=/>; rel="https://api.w.org/"
Server:nginx/1.10.3
Transfer-Encoding:chunked
Vary:Accept-Encoding
X-Powered-By:PHP/7.0.15
网友评论