Accept Header / cache versioning issue

biazus nginx-forum at nginx.us
Wed Aug 19 16:00:21 UTC 2015


Hi Guys,

I noticed that Nginx 1.8.X is taking into account the Client Header "Accept"
for versioning the cache objects, for instance:

This request, generates one object in cache: 

curl -sv -o /dev/null 'http://www.foo.bar/image.png -H  'Accept: */*'

And this, generates another one:

curl -sv -o /dev/null 'http://www.foo.bar/image.png -H  'Accept: text/html,
image/gif, image/jpeg, *; q=.2, */*; q=.2'

This one, another one, and so on:

curl -sv -o /dev/null 'http://www.foo.bar/image.png -H  'Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'

Considering this behaviour:

it will generate many versions of the same object in cache, using much more
disc resources, space, IO.

It will reduce the cache hit ratio, as a consequence, will reduce the
performance.

Then, I have a question:

Is there any way to normalize the Accept header, or even ignore it ?

Thanks in advance,

Biazus

Posted at Nginx Forum: http://forum.nginx.org/read.php?2,261128,261128#msg-261128



More information about the nginx mailing list