Joshua Slive wrote: > I'm no protcol expert, but that doesn't make sense to me. mod_negotiation > should be adding "Accept-Language" to the Vary: header (yep, it's doing > that), but it shouldn't be setting Expires, should it? Proxies should be > free to cache the page, conditional on the Accept-Language.
Here's the chunk of code from mod_negotiation: if ((!do_cache_negotiated_docs(r->server) && (r->proto_num < HTTP_VERSION(1,1))) && neg->count_multiviews_variants != 1) { r->no_cache = 1; } and yes, HTTP version does make a difference: [gregames@gandalf gregames]$ runsocks nc httpd.apache.org 80 HEAD /docs/mod/core.html HTTP/1.1 host: httpd.apache.org HTTP/1.1 200 OK Date: Tue, 22 Jan 2002 19:46:47 GMT Server: Apache/2.0.29 (Unix) Content-Location: core.html.en Vary: negotiate,accept-language TCN: choice Accept-Ranges: bytes Content-Type: text/html Content-Language: en for comparison purposes: [gregames@gandalf gregames]$ runsocks nc httpd.apache.org 80 HEAD /docs/mod/core.html HTTP/1.0 host: httpd.apache.org HTTP/1.1 200 OK Date: Tue, 22 Jan 2002 19:49:07 GMT Server: Apache/2.0.29 (Unix) Content-Location: core.html.en Vary: negotiate,accept-language TCN: choice Accept-Ranges: bytes Connection: close Content-Type: text/html Content-Language: en Expires: Tue, 22 Jan 2002 19:49:07 GMT ...so Andrzej's squid must be using HTTP/1.0 Greg