2019-02-26 13:50:07 +00:00
|
|
|
# Compress
|
|
|
|
|
|
|
|
Compressing the Response before Sending it to the Client
|
|
|
|
{: .subtitle }
|
|
|
|
|
|
|
|
![Compress](../assets/img/middleware/compress.png)
|
|
|
|
|
|
|
|
The Compress middleware enables the gzip compression.
|
|
|
|
|
|
|
|
## Configuration Examples
|
|
|
|
|
|
|
|
??? example "File -- enable gzip compression"
|
|
|
|
|
|
|
|
```toml
|
2019-03-14 08:30:04 +00:00
|
|
|
[http.middlewares]
|
|
|
|
[http.middlewares.test-compress.Compress]
|
2019-02-26 13:50:07 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
??? example "Docker -- enable gzip compression"
|
|
|
|
|
|
|
|
```yml
|
|
|
|
a-container:
|
|
|
|
image: a-container-image
|
|
|
|
labels:
|
2019-03-14 08:30:04 +00:00
|
|
|
- "traefik.http.middlewares.test-compress.compress=true",
|
2019-02-26 13:50:07 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
## Notes
|
|
|
|
|
|
|
|
Responses are compressed when:
|
|
|
|
|
|
|
|
* The response body is larger than `512` bytes.
|
|
|
|
* The `Accept-Encoding` request header contains `gzip`.
|
|
|
|
* The response is not already compressed, i.e. the `Content-Encoding` response header is not already set.
|