未压缩:

未压缩:

我已在计算机上运行的 Tomcat 上启用了压缩。https 响应标头显示已启用压缩,但启用和未启用压缩时传输的数据量相同。

未压缩:

Status OK
Code    200
Encoded 218.89 KB
Decoded 218.89 KB
Transfered  219.22 KB
Compressed  No

压缩后:

Status  OK
Code    200
Encoded 218.89 KB
Decoded 218.89 KB
Transfered  219.26 KB
Compressed  Yes
Compression 1.00×

我可以在响应标头中看到 Content-Encoding 为 gzip。

我在 server.xml 中的连接器定义如下:

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS"
           keystoreFile="xxxxx" keystorePass="xxxx"
           useSendfile="false" compression="force" />

我正在使用 Tomcat 8.0.12。浏览器是运行在 MAC OS X Yosemite 上的最新版本的 Safari。

压缩开启时的详细信息

关闭压缩后的详细信息

编辑:正如 Tim 的回答,我被 Safari 报告的数字误导了。请参阅stackoverflow.com/a/21943693/3944823

答案1

您确定 Tomcat 无法正常工作吗?可能是 Web 浏览器错误地报告了内容大小而不是传输大小。使用其他 Web 浏览器进行检查,或者检查 Web 服务器访问日志。

注意——根据上述评论确认。

相关内容