RFC 7233, "Hypertext Transfer Protocol (HTTP/1.1): Range Requests", June 2014Source of RFC: httpbis (app)
Errata ID: 4665
Publication Format(s) : TEXT
Reported By: Amichai Rothman
Date Reported: 2016-04-13
Rejected by: Alexey Melnikov
Date Rejected: 2017-02-23
Section 3.1 says:
It should say:
If all of the preconditions are true and the target representation length is zero, the server SHOULD send a 200 (OK) response.
An empty representation is unsatisfiable according to section 2.1, but not unsatisfiable according to section 4.4 if the first-byte-pos is zero. An empty 200 response is the simplest solution to this contradiction, since it is a valid response anyway (if the server chooses to ignore the Range header), clients already handle it properly, it provides all necessary information to the client, and stating it explicitly can prevent subtle edge-case pitfalls in both the RFC and its implementations.
Mark Nottingham: this is not an erratum. Please raise an issue here: