Add gzip-min-length as a configurable

This commit is contained in:
Daniel Arifin 2020-02-14 13:23:36 +07:00
parent 71e35c9100
commit d48d5a61ae
4 changed files with 12 additions and 1 deletions

View file

@ -393,6 +393,10 @@ type Configuration struct {
// gzip Compression Level that will be used
GzipLevel int `json:"gzip-level,omitempty"`
// Minimum length of responses to be sent to the client before it is eligible
// for gzip compression, in bytes.
GzipMinLength int `json:"gzip-min-length,omitempty"`
// MIME types in addition to "text/html" to compress. The special value “*” matches any MIME type.
// Responses with the “text/html” type are always compressed if UseGzip is enabled
GzipTypes string `json:"gzip-types,omitempty"`
@ -695,6 +699,7 @@ func NewDefault() Configuration {
HSTSPreload: false,
IgnoreInvalidHeaders: true,
GzipLevel: 5,
GzipMinLength: 256,
GzipTypes: gzipTypes,
KeepAlive: 75,
KeepAliveRequests: 100,

View file

@ -65,6 +65,7 @@ func TestMergeConfigMapToStruct(t *testing.T) {
"error-log-path": "/var/log/test/error.log",
"use-gzip": "true",
"gzip-level": "9",
"gzip-min-length": "1024",
"gzip-types": "text/html",
"proxy-real-ip-cidr": "1.1.1.1/8,2.2.2.2/24",
"bind-address": "1.1.1.1,2.2.2.2,3.3.3,2001:db8:a0b:12f0::1,3731:54:65fe:2::a7,33:33:33::33::33",
@ -85,6 +86,7 @@ func TestMergeConfigMapToStruct(t *testing.T) {
def.ProxySendTimeout = 2
def.UseProxyProtocol = true
def.GzipLevel = 9
def.GzipMinLength = 1024
def.GzipTypes = "text/html"
def.ProxyRealIPCIDR = []string{"1.1.1.1/8", "2.2.2.2/24"}
def.BindAddressIpv4 = []string{"1.1.1.1", "2.2.2.2"}