- From: Jamie Lokier <jamie@shareable.org>
- Date: Thu, 27 May 2004 14:41:01 +0100
- To: Alex Rousskov <rousskov@measurement-factory.com>
- Cc: HTTP working group <ietf-http-wg@w3.org>
Alex Rousskov wrote: > > To be more precise, I'm fairly sure the proxy should indicate it is > > HTTP/1.1 capable, because that's the capability of the message > > sender, which is the proxy. (It's not a tunnel). My question > > really is about the observed behaviour of widely deployed proxies > > over the past few years. Does anyone know what the behaviour of > > deployed proxies is? > > Proxies that claim HTTP/1.1 support usually send HTTP/1.1 messages. A > few proxies have an option to configure the protocol version in the > messages they sent. Thanks Alex. That answers my question. I've been investigating the various workarounds in popular HTTP servers and proxies, to see what folklore a new internet-facing server should include for robustness. Just fyi, I was looking at this part of Apache's default config: BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 The "nokeepalive" directive disables persistence if a request comes from a user-agent containing "MSIE 4.0b2;" _and_ if there's no Via header. The "downgrade-1.0" makes the server pretend it's a HTTP/1.0 request. The "force-response-1.0" makes the server send "HTTP/1.0" in the response. I wanted to decide whether the latter two can be ignored if there's a Via header -- so that the user-agent pattern matching may be skipped altogether. Same applies to the other BrowserMatch directives. Of course the only way to be sure is testing, but you have given me confidence that it is fine to omit all the user-agent checks which affect hop-by-hop if there's a Via header. > Versions are supposed to be a hop-by-hop mechanism. Yes, but because of some broken HTTP implementations there are workarounds deployed. I wondered if a proxy would forward a HTTP/1.0 response and label it as if the sender was HTTP/1.0 as part of the workarounds which kept the net working in 1997 or so. > There are a few proxies that support many HTTP/1.1 features but do > not use HTTP/1.1 versions. Squid is one of them. Do you know of any practical compatibility reason why Squid must report itself as HTTP/1.0 even if it supported all HTTP/1.1 proxy requirements? Or is it simply that it doesn't implement the requirements yet? -- Jamie
Received on Thursday, 27 May 2004 09:41:09 UTC