提高网站加载速度 - Nginx配置开启Gzip

前言

现在很多站长都会使用Nginx作为反向代理服务器,但是Nginx的Gzip默认配置是关闭的。

这种情况,页面将会以原始大小输出,如果页面很大的话,在浏览器则会有一定的加载时间,影响用户体验。

Nginx配置开启Gzip

互联网行业,凡事以快为先,那么我们该如何开启Gzip来压缩呢。

在开始之前,我们需要先了解一下什么是Gzip。

什么是Gzip - 我们先介绍一下

gzip是GNUzip的缩写,它是一个GNU自由软件的文件压缩程序。它是Jean-loupGailly和MarkAdler一起开发的。

我们在Linux服务器上,经常会用tar -ctvz来进行文件的压缩和归档,其中z这个参数就是用来指定压缩为Gzip格式。

HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。一般对纯文本内容可压缩到原大小的40%。

大流量的WEB站点常常使用GZIP压缩技术来减小HTTP的报文长度,让用户感受更快的速度。

接下来,开始对网站开启Gzip吧,我们以兔子先生网站为例。

Nginx配置开启Gzip步骤

修改nginx.conf文件

打开配置文件,可以看到网站默认的Gzip是关闭,我们需要修改一下

Nginx配置开启Gzip

修改配置信息如下:

gzip            on;
gzip_min_length 1000;
gzip_proxied    expired no-cache no-store private auth;
gzip_types      text/plain application/xml text/css text/javascript;

说明一下:

  • 第1行:开启Gzip
  • 第2行:不压缩临界值,大于1K的才压缩,一般不用改
  • 第3行:是否开启压缩的条件配置,这些都是默认值,一般不用调整
  • 第4行:进行压缩的文件类型

保存文件并退出

Nginx重启或重新加载配置

/usr/local/nginx/sbin/nginx -s reload

验证Gzip是否生效

curl -I -H "Accept-Encoding: gzip, deflate" "https://www.xtuz.net"


响应:
HTTP/1.1 200 OK
Server: nginx/1.15.7
Date: Fri, 18 Jan 2019 03:29:25 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
X-Frame-Options: SAMEORIGIN
Content-Encoding: gzip

看响应头已经含有Content-Encoding: gzip,说明我们已经配置成功了,

通过浏览器再看看,验证一下:

Nginx配置开启Gzip

可以看到,确实已经生效了。:)

小结

Gzip是网站优化的一个基本步骤,可以提高网站的响应速度,但是也会对服务端带来一点点的负担。

具体的配置参数可以参考Nginx Gzip官方手册


相关主题: