配置 Tomcat 开启 Gzip 压缩,提升页面打开速度。

Web 服务器开启 Gzip 压缩能显著减少资源的体积,在有限的带宽限制下,提升网站打开速度。不止是 Tomcat,常用的 nginx、Apache 都可以通过配置的方式打开 Gzip 压缩功能。

Tomcat 配置方法

找到 %TOMCAT_HOME%/conf/server.xml 配置文件,修改 Connector 标签,添加 Gzip 相关配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<Connector port="80" protocol="HTTP/1.1"connectionTimeout="3000"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,text/json,application/x-javascript,application/javascript,application/json"
redirectPort="443"
/>

<!-- 如果有开启 HTTPS -->
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,text/json,application/x-javascript,application/javascript,application/json"
>

配置项说明:

  • compression

    on:打开 Gzip

  • compressionMinSize

    文件大小超过该配置值才执行压缩,太小的文件压缩减少不了多少体积还增加了 CPU 计算负担。

  • noCompressionUserAgents

    不执行压缩的 User-Agent

  • compressableMimeType

    需要执行压缩的文件类型,注意:不要添加图片类型,因为例如 jpg 类型的图片本身就是压缩过的。

压缩效果

以访问本博客网站为例:

main.css 文件压缩后,大小为:9.2KB。

1572924989340

但实际文件下下来大小为 44.5KB,压缩了将近 80%。

1572925057687

参考文章

https://tomcat.apache.org/tomcat-8.5-doc/config/http.html