温馨提示×

debian tomcat如何开gzip

小樊
43
2026-10-12 07:32:21
栏目: 智能运维

在 Debian 上给 Tomcat 开启 Gzip 压缩,本质就是修改 Tomcat 的 connector 配置。下面以常见版本(Tomcat 8/9/10)为例说明。


一、找到 Tomcat 配置文件

通常路径为:

/etc/tomcat9/server.xml
# 或
/opt/tomcat/conf/server.xml

用 root 或 sudo 编辑:

sudo nano /etc/tomcat9/server.xml

二、修改 Connector 开启 Gzip

找到 <Connector> 节点(一般是 8080 端口那个),加上 Gzip 相关参数:

<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443"

           compression="on"
           compressionMinSize="2048"
           noCompressionUserAgents="gozilla, traviata"
           compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,application/json,application/xml" />

参数说明

  • compression="on":开启 Gzip
  • compressionMinSize="2048":大于 2KB 才压缩
  • compressableMimeType:需要压缩的 MIME 类型
  • noCompressionUserAgents:不压缩的客户端(可省略)

三、重启 Tomcat

sudo systemctl restart tomcat9
# 或
sudo service tomcat restart

四、验证是否生效

方法 1:curl 测试

curl -H "Accept-Encoding: gzip" -I http://localhost:8080/

看到:

Content-Encoding: gzip

说明成功。

方法 2:浏览器

  • F12 → Network
  • 查看 Response Headers 中是否有 Content-Encoding: gzip

五、常见问题

1. 前端是 Nginx?

如果 Tomcat 前面有 Nginx,建议在 Nginx 开 Gzip,Tomcat 可保持默认。

2. AJP 端口?

AJP(8009)一般不做 Gzip,由前端处理。

3. Spring Boot 内嵌 Tomcat?

在 application.properties:

server.compression.enabled=true
server.compression.min-response-size=2KB
server.compression.mime-types=text/html,text/css,application/json

如果你告诉我 Tomcat 版本 / 是否有 Nginx / 是否 Spring Boot,我可以给你更精确配置。

0 踩