gzip_disable doesn't disable gzip_vary

Edho Arief edho at myconan.net
Fri Mar 2 07:08:05 UTC 2012

I noticed that with this setting:

gzip on;
gzip_vary on;
gzip_disable "msie6";

Header "Vary: Accept-Encoding" will always be returned even though the
user agent is ie6 (and therefore not using gzip):

# curl -I http://animebsd.net/about/feed -A "Mozilla/4.0 (compatible;
MSIE 6.0; Windows NT 5.0)"
HTTP/1.1 200 OK
Server: nginx/1.1.14
Date: Fri, 02 Mar 2012 07:04:25 GMT
Content-Type: text/xml; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding
X-Pingback: http://animebsd.net/xmlrpc.php
Last-Modified: Fri, 02 Mar 2012 04:17:00 GMT
ETag: "92a5989a0949b85e303228490256ebf2"
X-Powered-By: W3 Total Cache/
Link: <http://wp.me/Pig2n-5B>; rel=shortlink

I don't think this is intentional as getting non-gzipped content
doesn't return such header. (I've verified this is returned by nginx
by running same test with disabled gzip_vary)

(I don't see mention of this being fixed in .15 and .16 in the
changelog so I haven't tested with them)

More information about the nginx mailing list