Hello, thanks for the quick reply !

Le lun. 31 mars 2025 à 10:35, Willy Tarreau <w...@1wt.eu> a écrit :

>   Compression is disabled when:
>     * the request does not advertise a supported compression algorithm in
> the
>       "Accept-Encoding" header
>     * the response message is not HTTP/1.1 or above
>     * HTTP status code is not one of 200, 201, 202, or 203
>     * response contain neither a "Content-Length" header nor a
>       "Transfer-Encoding" whose last value is "chunked"
>     * response contains a "Content-Type" header whose first value starts
> with
>       "multipart"
>     * the response contains the "no-transform" value in the "Cache-control"
>       header
>     * User-Agent matches "Mozilla/4" unless it is MSIE 6 with XP SP2, or
> MSIE 7
>       and later
>     * The response contains a "Content-Encoding" header, indicating that
> the
>       response is already compressed (see compression offload)
>     * The response contains an invalid "ETag" header or multiple ETag
> headers
>     * The payload size is smaller than the minimum size
>       (see compression minsize-res)
>

I've already checked all these points. "minsize-res" was introduced in 3.2
I guess (and I'm using 3.1) but the default value being 0, it's not the
issue here.

What I do :
 $ curl -v --http1.1 --compressed https://example.com/
 GET / HTTP/1.1
 Host: example.com
 User-Agent: curl/7.76.1
 Accept: */*
 Accept-Encoding: deflate, gzip

 HTTP/1.1 200 OK
 x-version: 20250331.2
 cache-control: private, no-cache, no-store, max-age=0
 content-type: text/html
 content-length: 3362

No compression here :(

HAProxy config snippet :
backend test
[...]
  filter compression
  compression algo-res gzip
  compression type-res text/html
  acl static_content path_end .png .gif .css .js .svg .jpg .jpeg .ico .woff
.woff2 .ttf .eot .otf .webp .pdf .webp .webm .weba
  http-request lua.myscript if !static_content


If you have any clue, I'll be glad to perform more tests.

Olivier

Reply via email to