I'd like to switch off the support for HTTP/1.0 on my web servers. These servers host regular websites (MVC.NET).

  • What are the potential negative implications?
  • Are there any important Internet services using HTTP/1.0 which I should be aware of?

HTTP/1.1 was introduced 20 years ago in January 1997. Every modern browser uses it, so disabling the support for HTTP/1.0 would not affect any actual user. Some web crawlers seems to claim they are using HTTP/1.0, but as these appears in the logs of virtual hosts (not supported in HTTP/1.0) too, I doubt that they should be fully capable of using HTTP/1.1.

For short explanation of the differences, see RFC 2616 19.6.1. If you want deeper understanding, read the Key Differences between HTTP/1.0 and HTTP/1.1.

Let's go back to one of the main differences, virtual hosts already mentioned in the first paragraph:

For example, if a user makes a request for the resource at URL http://example1.org/home.html, the browser sends a message with the Request-Line

GET /home.html HTTP/1.0 

to the server at example1.org. This prevents the binding of another HTTP server hostname, such as exampleB.org to the same IP address, because the server receiving such a message cannot tell which server the message is meant for. Thus, the proliferation of vanity URLs causes a proliferation of IP address allocations.

The Internet Engineering Steering Group (IESG), which manages the IETF process, insisted that HTTP/1.1 take steps to improve conservation of IP addresses. Since HTTP/1.1 had to interoperate with HTTP/1.0, it could not change the format of the Request-Line to include the server hostname. Instead, HTTP/1.1 requires requests to include a Host header, first proposed by John Franks [Fra94], that carries the hostname. This converts the example above to:

GET /home.html HTTP/1.1
Host: example1.org 

If the URL references a port other than the default (TCP port 80), this is also given in the Host header.

Virtual hosts are nowadays so common that actually lack of them is extraordinary. See whether you get the same page with your domain name and with the IP address or not. If you don't, you already aren't fully supporting HTTP/1.0 in any practical manner; abandoning it wouldn't be a radical change.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.