I'm developing a rails web services with ngnix + passenger, and I use reverse proxy cache in nginx. It works quite well and very fast. The problem is that some clients don't support gzip while some others support.
What I found out is that nginx caches the gzip content, therefore if the gzip-supported clients request first, then the non-gzip clients request, the server still returns gzip content even if the client sends the header "Accept-Encoding": "".
Do you have to cache them separately by combining the request_uri and header 'Accept-Encoding'?