[Python-Dev] Remove HTTP 0.9 support

exarkun at twistedmatrix.com exarkun at twistedmatrix.com
Thu Dec 16 19:30:18 CET 2010


On 05:02 pm, solipsis at pitrou.net wrote:
>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.]

Note that by using `nc` to test this, you're already generating an 
illegal request (unless you're doing something very special with your 
keyboard ;).  When you hit return, nc will send \n.  However, lines are 
delimited by \r\n in HTTP.

I doubt this makes a difference to the point being discussed, but it 
_could_.  I suggest performing your tests with telnet, instead.

Jean-Paul


More information about the Python-Dev mailing list