介绍
通过修改nginx配置文件nginx.conf开启gzip压缩功能,这样nginx服务器会根据配置的策略对发送的内容进行压缩,在用户接收到返回内容之前对其进行处理,以压缩后的数据展现给客户。这样不仅能够提升用户感知体验,也能节省出口带宽,一举两得。
配置
#修改nginx配置文件 /usr/local/nginx/conf/nginx.conf
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
#修改配置为
gzip on; #开启gzip压缩功能
gzip_min_length 1k; #设置允许压缩的页面最小字节数
gzip_buffers 4 16k; #设置压缩缓冲区大小,此处设置为4个16K内存作为压缩结果流缓存
gzip_http_version 1.1; #压缩版本
gzip_comp_level 2; #设置压缩比率,最小为1,处理速度快,传输速度慢;9为最大压缩比,处理速度慢,传输速度快
gzip types text/css text/xml application/javascript; #制定压缩的类型
gzip vary on; #选择支持vary header;改选项可以让前端的缓存服务器缓存经过gzip压缩的页面
测试
首先重启nginx:
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload
使用curl看一下头信息是否成功:
[root@localhost ~]# curl -I -H "Accept-Encoding: gzip, deflate" "http://www.nginxtest.com/gziptest/"
HTTP/1.1 200 OK
Server: nginx/1.4.2
Date: Tue, 11 Jul 2017 11:57:09 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Content-Encoding: gzip
这样,网页内容就经过压缩了。