Link: http://trac.tools.ietf.org/wg/httpbis/trac/ticket/102
Origin: http://www.w3.org/mid/001501c870b6$d2a078f0$6501a8c0@T60
Component: p2-semantics
RFC2616 Section 9.6 (PUT) places the following requirement on PUT recipients:
The recipient of the entity MUST NOT ignore any Content-* (e.g. Content-Range) headers that it does not understand or implement and MUST return a 501 (Not Implemented) response in such cases.
Does this advice apply to other request methods than PUT? E.g., POST? Should it apply to all requests with bodies?
The notion of Content- being a special prefix comes from MIME, where it is the required prefix for metadata that describes a MIME part. This paragraph should have merely described the purpose of Content- header fields and state what the recipient should do with unrecognized header fields.
The original design was that such metadata should be stored as entity headers and regurgitated as such. However, that is only true when no transformations are done for the PUT. At most, this should only warn implementations that all of the metadata needs to be understood or discarded whenever changes are made to the corresponding data.
Content-Range, in particular, should not be allowed on requests.