Network Working Group R. Fielding Request for Comments: 2616 ...
Network Working Group R. Fielding Request for Comments: 2616 ...
Network Working Group R. Fielding Request for Comments: 2616 ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
An application that sends a request or response message that includesHTTP-Version of "HTTP/1.1" MUST be at least conditionally compliantwith this specification. Applications that are at least conditionallycompliant with this specification SHOULD use an HTTP-Version of"HTTP/1.1" in their messages, and MUST do so <strong>for</strong> any message that isnot compatible with HTTP/1.0. For more details on when to sendspecific HTTP-Version values, see RFC 2145 [36].The HTTP version of an application is the highest HTTP version <strong>for</strong>which the application is at least conditionally compliant.Proxy and gateway applications need to be careful when <strong>for</strong>wardingmessages in protocol versions different from that of the application.Since the protocol version indicates the protocol capability of thesender, a proxy/gateway MUST NOT send a message with a versionindicator which is greater than its actual version. If a higherversion request is received, the proxy/gateway MUST either downgradethe request version, or respond with an error, or switch to tunnelbehavior.Due to interoperability problems with HTTP/1.0 proxies discoveredsince the publication of RFC 2068[33], caching proxies MUST, gatewaysMAY, and tunnels MUST NOT upgrade the request to the highest versionthey support. The proxy/gateway's response to that request MUST be inthe same major version as the request.Note: Converting between versions of HTTP may involve modificationof header fields required or <strong>for</strong>bidden by the versions involved.3.2 Uni<strong>for</strong>m Resource IdentifiersURIs have been known by many names: WWW addresses, Universal DocumentIdentifiers, Universal Resource Identifiers [3], and finally thecombination of Uni<strong>for</strong>m Resource Locators (URL) [4] and Names (URN)[20]. As far as HTTP is concerned, Uni<strong>for</strong>m Resource Identifiers aresimply <strong>for</strong>matted strings which identify--via name, location, or anyother characteristic--a resource.<strong>Fielding</strong>, et al. Standards Track [Page 18]RFC <strong>2616</strong> HTTP/1.1 June 19993.2.1 General SyntaxURIs in HTTP can be represented in absolute <strong>for</strong>m or relative to someknown base URI [11], depending upon the context of their use. The two<strong>for</strong>ms are differentiated by the fact that absolute URIs always begin