HTTP Versions: HTTP/0.9

By: Dusty Arlia
Published on Sunday, June 1, 2014, 02:18 PM
Last Updated on Saturday, July 11, 2015 at 3:24 PM
Total Updates: 3

HTTP/0.9 is the first version of the HTTP protocol. It was written by Tim Berners-Lee in 1991. When he wrote this first draft, there was no version number yet. This initial draft was 1 1/2 pages long. HTTP/0.9 got its version number when HTTP/1.0 was written. HTTP/1.0 would be the first HTTP version documented in an RFC publication (RFC 1945).

HTTP/0.9, being the first version of HTTP, had some flaws. It did not let you send non-HTML data or any kind of metadata. So there was no way for browsers to communicate which language the user spoke or which file types their computer supported. Servers were not able to communicate errors in finding the requested document (e.g. the file was not found or it was moved). The server was also not able to communicate the file type of the returned document and HTML was just assumed. And finally, it was impossible to host multiple websites with unique hostnames under one IP address. This was because the URL in the request line was limited to the path and query string.

HTTP/0.9 requests consisted of 3 things:

  • GET - The request method
  • [URL] - The URL and query string of the requested resource
  • [CRLF] or [LF] - Carriage Return Line Feed or just Line Feed

Here is an example of an HTTP/0.9 request line:

GET /example.html

The Carriage Return Line Feed or Line Feed characters are not printed characters, they are ASCII control characters that indicate the end of the request. All HTTP characters are represented in ASCII code.