Question

In 2002, Roy Fielding states that HTTP version should be case-sensitive in an RFC errata:

Personally, I never had any intention that the "HTTP" be case-insensitive, and I am not aware of any clients that send it lowercase, nor any server that would accept it as lowercase. Doing so is a waste of cycles. So, I'd like that paragraph above to say:

The version of an HTTP message is indicated by an HTTP-Version field in the first line of the message. HTTP-Version is case-sensitive.

However, RFC 2616 doesn't seem to be updated with his proposal.

So, are HTTP versions case-sensitive?

In other words, can a HTTP client/server send the HTTP version as hTtP/1.1 and still claim to be RFC-compliant?

Was it helpful?

Solution 2

Adding on to Julian's answer two years ago, RFC 7230 (which replaces 2616) now explicitly states that HTTP-Version is case-sensitive:

A.2. Changes from RFC 2616

.........

The HTTP-version ABNF production has been clarified to be case-sensitive. Additionally, version numbers have been restricted to single digits, due to the fact that implementations are known to handle multi-digit version numbers incorrectly. (Section 2.6)

And Section 2.6. Protocol Versioning:

The version of an HTTP message is indicated by an HTTP-version field in the first line of the message. HTTP-version is case-sensitive.

     HTTP-version = HTTP-name "/"DIGIT"." DIGIT
     HTTP-name = %x48.54.54.50 ; "HTTP", case-sensitive

OTHER TIPS

The answer is here: http://tools.ietf.org/wg/httpbis/trac/ticket/1. And yes, RFC 2616 is being updated.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top