有两点需要注意
1、需要在application.properties里启用压缩,并设置压缩支持的格式(默认支持text/html等,但不支持application/json)
server.compression.enabled=true
server.compression.mime-types=application/json,application/xml,text/html,text/xml,text/plain
2、默认情况下,仅会压缩2048字节以上的内容
#默认就是2048 byte
server.compression.min-response-size=2048
以上内容,详见 *org.springframework.boot.context.embedded.*Compression
以及 *org.springframework.boot.autoconfigure.web.*ServerProperties
另外,这个设置本身是由servlet container提供的,所以,也可以在tomcat等的设置里找到。
对tomcat来说,在server.xml 的HTTP/1.1的connector节点中设置:
<!-- 这里的压缩设置,是默认的 -->
<Connector port="8888" protocol="HTTP/1.1"
connectionTimeout="21000"
redirectPort="28080"
URIEncoding="UTF-8"
compression="on"
compressionMinSize="50"
noCompressionUserAgents="gozilla, traviata"
compressionMinSize = “2048”
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
ps:以上是对于最新的Spring Boot来说的,如果是旧版本的(
参考:
Spring 官方指导
tomcat配置gzip压缩compressionMinSize选项无效
Understanding Gzip Compression in Spring Boot ,Angular Java Application
本文由 创作,采用 知识共享署名4.0 国际许可协议进行许可。本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为: 2020/05/15 09:27