Spring Boot 启用Gzip压缩
Posted LarryZeal
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot 启用Gzip压缩相关的知识,希望对你有一定的参考价值。
有两点需要注意
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来说的,如果是旧版本的(
参考:
tomcat配置gzip压缩compressionMinSize选项无效
Understanding Gzip Compression in Spring Boot ,Angular Java Application
以上是关于Spring Boot 启用Gzip压缩的主要内容,如果未能解决你的问题,请参考以下文章
将 GZIP 压缩与 Spring Boot/MVC/JavaConfig 与 RESTful 结合使用
Spring Boot gzip 压缩响应的大小小于配置的 min-response-size