httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexei Kosut <>
Subject Re: Last call for patches
Date Thu, 15 Feb 1996 21:55:16 GMT
On Thu, 15 Feb 1996, David Robinson wrote:

> > Yes, that is why I originally said they couldn't be trusted from 1.0
> > requests, and that it should only be implemented experimentally until
> >  1.1 is final.
> Maybe we should have a
> KeepAlive1.0Experiment on
> directive to enable it for 1.0 clients?

Unfortunately, this won't work. Or, at least it will, but will make the 
server's feature useless. It's not really an experiment anymore. More 30% of 
the net (to use Netscape's figure on how many people are using Navigator 
2.0) are using browsers that support Keep-Alive.

As well, there are no HTTP/1.1 browsers. The HTTP/1.1 draft is in peices, 
and it currently has a big warning across the stop saying everyone hates 
it and that it will change a lot. So we *have* to support KeepAlive in 

> >    a) Always remove Connection and any header fields listed by Connection
> >       prior to forwarding

I don't see why you refuse to do this. Yes, it's not HTTP/1.0, but it 
*is* a problem. All of the major HTTP servers (if you count Apache + 90g) 
support Keep-Alive. 30% of browsers do. This means that if someone uses 
your module and the ProxyPass directive between servers that support 
Keep-Alive, then a third of the requests are gaurenteed to hang. Do you 
want this?

Yes, it's not perfect. It's not elegent, and you might not like it. But 
it's what has to be done to make things work. Because that's the goal 
here - to write a web server that people can use to serve webs. (hence 
the name).

> One more thing; currently, the proxy module sends the HTTP version it got
> from the remote server to the client; so if it gets an HTTP/1.1 response,
> it sends an HTTP/1.1 response. Should it reset the version to HTTP/1.0,
> assuming it didn't actually know anything about 1.1?

Yes. The HTTP specs say this explicitly  (from 

   Proxy and gateway applications must be careful in forwarding 
   requests that are received in a format different than that of the 
   application's native HTTP version. Since the protocol version 
   indicates the protocol capability of the sender, a proxy/gateway 
   must never send a message with a version indicator which is greater 
   than its native version; if a higher version request is received, 
   the proxy/gateway must either downgrade the request version or 
   respond with an error. Requests with a version lower than that of 
   the application's native format may be upgraded before being 
   forwarded; the proxy/gateway's response to that request must follow 
   the normal server requirements.

--/ Alexei Kosut <> /--------/ Lefler on IRC
----------------------------/ <>
The viewpoints expressed above are entirely false, and in no way
represent Alexei Kosut nor any other person or entity. /--------------

View raw message