Tomcat 中是否可以使用 https 进行 gzip 压缩?

Jel*_*tor 5 compression https tomcat gzip

是否可以为 https 配置 Tomcat (7.0.75) 并同时启用 gzip 压缩?我无法找出 http 连接器属性的有效组合server.xml来完成工作。在 http 上工作的四个与压缩相关的属性:

compression="on"
compressableMimeType="application/json"
compressionMinSize="8192"
useSendfile="false"
Run Code Online (Sandbox Code Playgroud)

配置 https 时似乎没有任何影响。我目前的配置:

compression="on"
compressableMimeType="application/json"
compressionMinSize="8192"
useSendfile="false"
Run Code Online (Sandbox Code Playgroud)

小智 6

我使用server.xml 的这个配置:

1.http连接器

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000"
    compression="on" compressionMinSize="0" useSendfile="false"
    redirectPort="443" />
Run Code Online (Sandbox Code Playgroud)

2.https连接器

<Connector port="443" protocol="org.apache.coyote.http11.Http11AprProtocol"
           maxThreads="200" SSLEnabled="true" connectionTimeout="20000"
           compression="on" compressionMinSize="0" useSendfile="false" >
    <SSLHostConfig>
        <Certificate certificateKeyFile="conf/key.crt"
                     certificateFile="conf/certificate.crt"
                     certificateChainFile="conf/chain.crt"
                     type="RSA" />
    </SSLHostConfig>
</Connector>
Run Code Online (Sandbox Code Playgroud)

您可能希望将端口更改808080,并将端口更改4438443


UPD:如果您使用http2协议 - 也添加此行:

<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol"
                 compression="on" compressionMinSize="0" useSendfile="false" />
Run Code Online (Sandbox Code Playgroud)