On 08/02/11 10:47, George N. Zavalis wrote:
Hi all, I am using squid 2.7.stable9 , and gzip compression in the origin servers (IIS) Whenever a client requests a compressed resource for the first time (assume a new url/resource) it is cached and the compressed version is served to the clients requesting the compressed version of the resource. Everything works fine till now, but when one client request the UNcompressed version of the resource/url - no matter the TTL of the resource (even if it is one year or more) - the request ends up to the origin (miss) the Uncompressed version is fetched,cached and served to the client and the following clients even if they request the compressed version. I even tried to specific request a compressed version of the resource with WFETCH and the appropriate request headers (Accept-Encoding: gzip) but I am still getting the Uncompressed version of the resource (me and the rest clients requesting the resource) This happening with all my resources - no matter of mime type.
Your IIS is omitting the Vary: header on non-compressed responses. It should be returning that header on all responses for a URL which varies.
NP: You may see that Squid 2.7 offers the broken_vary_header directive as a workaround. Using this workaround results in non-compressed variant always being served. The breakage in IIS is not part of the use-case this directive fixes.
Amos -- Please be using Current Stable Squid 2.7.STABLE9 or 3.1.10 Beta testers wanted for 3.2.0.4