It appears that HAproxy is not honoring q-values in the Accept-Encoding header, when requesting compression.
When I run a curl command with Accept-Encoding:gzip (no q-value), I get back an expected response: #curl -svo /dev/null "http://something/js/global-main-7b2ca6b.js<http://origin.cdn.creativelive.com/js/global-main-7b2ca6b.js>" -H"Accept-Encoding: gzip" *Date: Fri, 14 Mar 2014 19:20:28 GMT* *Content-Type: application/x-javascript* *Last-Modified: Fri, 14 Mar 2014 05:35:33 GMT* *ETag: "53229525-56f6d"* *Access-Control-Allow-Origin: ** *Access-Control-Allow-Credentials: true* *Access-Control-Allow-Methods: GET, POST, OPTIONS* *Access-Control-Allow-Headers: DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type* *Accept-Ranges: bytes* *Transfer-Encoding: chunked* *Content-Encoding: gzip* However, if I run a 'curl' command with a q-value on the Accept-Encoding parameter, I get: # curl -svo /dev/null "http://something/js/global-main-7b2ca6b.js<http://origin.cdn.creativelive.com/js/global-main-7b2ca6b.js>" -H"Accept-Encoding: gzip;q=1.000" *Date: Fri, 14 Mar 2014 19:47:10 GMT* *Content-Type: application/x-javascript* *Content-Length: 356205* *Last-Modified: Fri, 14 Mar 2014 05:35:30 GMT* *ETag: "53229525-56f6d"* *Access-Control-Allow-Origin: ** *Access-Control-Allow-Credentials: true* *Access-Control-Allow-Methods: GET, POST, OPTIONS* *Access-Control-Allow-Headers: DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type* *Accept-Ranges: bytes* On HAproxy, I have this setup on my frontend: frontend web mode http bind *:80 bind *:443 ssl crt /etc/haproxy/certs/web.pem crt /etc/haproxy/certs/ log-format %ST|%fp|%CC|%Ts|%ci|%r|%hr capture cookie cc= len 63 option http-server-close option forwardfor capture request header User-Agent len 128 capture request header Host len 64 errorloc303 504 /live.html errorloc303 503 /live.html errorloc303 502 /live.html maxconn 5000 *compression algo gzip* * compression type text/html text/plain text/css text/javascript application/javascript application/x-javascript* Am I missing something or does HAproxy not support q-values? Thanks! Jay