Compress¶
Compressing the Response before Sending it to the Client
The Compress middleware enables the gzip compression.
Configuration Examples¶
# Enable gzip compression
labels:
- "traefik.http.middlewares.test-compress.compress=true"
# Enable gzip compression
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: test-compress
spec:
compress: {}
# Enable gzip compression
- "traefik.http.middlewares.test-compress.compress=true"
"labels": {
"traefik.http.middlewares.test-compress.compress": "true"
}
# Enable gzip compression
labels:
- "traefik.http.middlewares.test-compress.compress=true"
# Enable gzip compression
[http.middlewares]
[http.middlewares.test-compress.compress]
# Enable gzip compression
http:
middlewares:
test-compress:
compress: {}
Info
Responses are compressed when:
- The response body is larger than
1400
bytes. - The
Accept-Encoding
request header containsgzip
. - The response is not already compressed, i.e. the
Content-Encoding
response header is not already set.
If Content-Type header is not defined, or empty, the compress middleware will automatically detect a content type.
It will also set accordingly the Content-Type
header with the detected MIME type.
Configuration Options¶
excludedContentTypes
¶
excludedContentTypes
specifies a list of content types to compare the Content-Type
header of the incoming requests to before compressing.
The requests with content types defined in excludedContentTypes
are not compressed.
Content types are compared in a case-insensitive, whitespace-ignored manner.
labels:
- "traefik.http.middlewares.test-compress.compress.excludedcontenttypes=text/event-stream"
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: test-compress
spec:
compress:
excludedContentTypes:
- text/event-stream
- "traefik.http.middlewares.test-compress.compress.excludedcontenttypes=text/event-stream"
"labels": {
"traefik.http.middlewares.test-compress.compress.excludedcontenttypes": "text/event-stream"
}
labels:
- "traefik.http.middlewares.test-compress.compress.excludedcontenttypes=text/event-stream"
[http.middlewares]
[http.middlewares.test-compress.compress]
excludedContentTypes = ["text/event-stream"]
http:
middlewares:
test-compress:
compress:
excludedContentTypes:
- text/event-stream