[Python-Dev] Remove HTTP 0.9 support

Antoine Pitrou solipsis at pitrou.net
Thu Dec 16 18:02:45 CET 2010


On Fri, 17 Dec 2010 00:52:14 +0800
Senthil Kumaran <orsenthil at gmail.com> wrote:
> Actually, it is turning out to be true:
> 
> http://ftp.ics.uci.edu/pub/ietf/http/rfc1945.html#Response
> 
> According to HTTP 1.0, When a request is Simple-Request, it means a
> VERB URL (without a version) and it generally corresponds to HTTP 0.9
> And when a server receives such a Simple-Request, it sends a
> Simple-Response where it does not send the headers back.
> 
> I think, the same is exhibited by other Servers as well
> www.google.com, www.mozilla.org where for Invalid Request without
> version, you are sending a Simple-Request (HTTP 0.9) style and getting
> the corresponding response.

Yes, but only error or redirect responses:

$ nc www.google.fr 80
GET /
HTTP/1.0 302 Found
Location: http://www.google.fr/
[etc.]

$ nc www.mozilla.org 80
GET /
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /error/noindex.html
on this server.</p>
</body></html>


That's quite understandable, since most HTTP servers will expect a
"host" header to know which site is actually desired.
So a HTTP 0.9 client sending Simple-Requests has very little chance of
being useful these days.

Regards

Antoine.


More information about the Python-Dev mailing list