<div dir="ltr"><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">Hi,<br></div><div class="gmail_extra"><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">​<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span>
> The gzip_proxied<br>
</span>> <<a href="http://nginx.org/en/docs/http/ngx_http_gzip_module.html#gzip_proxied" target="_blank">http://nginx.org/en/docs/http/ngx_http_gzip_module.html#gzip_proxied</a>><br>
<span>> default value is set to honor the HTTP/1.0 protocol (which does not have<br>
> the Vary header and thus is unable to cache different versions of a<br>
> document) in some proxies.<br>
<br>
</span>You are still misunderstanding things.  It's one of the two<br>
possible approaches to handle things even if we forget about<br>
HTTP/1.0 completely.<br></blockquote><div><br><div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline">​Well the 2 only possible approaches in 1.0 are to send compressed or uncompressed data.<br>Client supporting compressed version​</div> <div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline">​will understand the uncompressed one but the reverse might not be true.<br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline">So if you are not able to make the answer being served from cache to vary (which is the case in 1.0), you are actually stuck with a single option, the only common denominator: no compression at all. Right?​</div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
> However, the gzip_http_version<br>
> <<a href="http://nginx.org/en/docs/http/ngx_http_gzip_module.html#gzip_http_version" target="_blank">http://nginx.org/en/docs/http/ngx_http_gzip_module.html#gzip_http_version</a>><br>
<span>> default value is set so that only HTTP/1.1 requests are being compressed...<br>
> Thus with the default setting it is impossible to compress requests<br>
> advertising HTTP/1.0.<br>
><br>
> The RFC<br>
</span>> <<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-14#section-2.5" target="_blank">http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-14#section-2.5</a>><br>
<span>> dictates:<br>
><br>
>    Intermediaries that process HTTP messages (i.e., all intermediaries<br>
>    other than those acting as a tunnel) MUST send their own HTTP-Version<br>
>    in forwarded messages.  In other words, they MUST NOT blindly forward<br>
>    the first line of an HTTP message without ensuring that the protocol<br>
>    version matches what the intermediary understands, and is at least<br>
>    conditionally compliant to, for both the receiving and sending of<br>
>    messages.<br>
<br>
</span>As you can see from the paragraph you quoted, nginx only knows<br>
HTTP version of the intermediary it got the request from.  That<br>
is, there is no guarantee that there are no HTTP/1.0 proxies along<br>
the request/response chain.<br></blockquote><div><br><div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline">​The text I quoted means than at the end of a chain of intermediaries, you are ensured that you will end up with the greatest common denominator, ie if a single element of the intermediaries chain does not handle 1.1, he his required to forward the request with a 1.0 version header, which will then be left untouched by following intermediaries (as 1.0 is the smallest version available)​.<br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline">An intermediary seing a 1.1 request coming in but not supporting that version is required to step down to a version it understands, meaning 1.0. It should not forward 1.1.<br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline"><br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline">If nginx sees 1.1 coming, it is my understanding that every intermediary supports <i>at least</i> 1.1, whatever number of intermediaries we are talking about.<br></div></div><div><br><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">​What is it I do not get?<br clear="all"></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153);display:inline"><div><div><font size="1"><span style="color:rgb(102,102,102)">---<br></span><b><span style="color:rgb(102,102,102)">B. R.</span></b><span style="color:rgb(102,102,102)"></span></font></div></div></div></div></div></div></div>