为什么gzip最小响应大小不受尊重?

时间:2018-03-05 09:19:28

标签: spring compression gzip

我创建了配置以使用spring boot压缩响应。以下是我的配置。

@Bean
public ServerProperties serverProperties() {
    final ServerProperties serverProperties = new ServerProperties();
    serverProperties.getCompression().setMimeTypes(new String[] {"text/html","text/xml","text/plain","text/css","application/json"});
    serverProperties.getCompression().setEnabled(true);
    return serverProperties;
}

问题是所有响应都有标题[Content-Encoding→gzip],即使响应大小小于最小响应大小,默认情况下为2048字节。

1 个答案:

答案 0 :(得分:3)

可能与此有关(以我为例):
https://jira.spring.io/browse/SPR-15212

Spring(mvc)http响应通常为“传输编码:分块”,因此没有内容长度。
如果没有content-length,则不能实现compression.min-response-size。

对于典型的服务器,提供内容长度的技术为here