11.07.2015 Views

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 ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

- A client that sends an HTTP/1.1 request MUST send a Host header.- Servers MUST report a 400 (Bad <strong>Request</strong>) error if an HTTP/1.1request does not include a Host request-header.- Servers MUST accept absolute URIs.19.6.2 Compatibility with HTTP/1.0 Persistent ConnectionsSome clients and servers might wish to be compatible with someprevious implementations of persistent connections in HTTP/1.0clients and servers. Persistent connections in HTTP/1.0 areexplicitly negotiated as they are not the default behavior. HTTP/1.0experimental implementations of persistent connections are faulty,and the new facilities in HTTP/1.1 are designed to rectify theseproblems. The problem was that some existing 1.0 clients may besending Keep-Alive to a proxy server that doesn't understandConnection, which would then erroneously <strong>for</strong>ward it to the nextinbound server, which would establish the Keep-Alive connection andresult in a hung HTTP/1.0 proxy waiting <strong>for</strong> the close on theresponse. The result is that HTTP/1.0 clients must be prevented fromusing Keep-Alive when talking to proxies.However, talking to proxies is the most important use of persistentconnections, so that prohibition is clearly unacceptable. There<strong>for</strong>e,we need some other mechanism <strong>for</strong> indicating a persistent connectionis desired, which is safe to use even when talking to an old proxythat ignores Connection. Persistent connections are the default <strong>for</strong>HTTP/1.1 messages; we introduce a new keyword (Connection: close) <strong>for</strong>declaring non-persistence. See section 14.10.The original HTTP/1.0 <strong>for</strong>m of persistent connections (the Connection:Keep-Alive and Keep-Alive header) is documented in RFC 2068. [33]19.6.3 Changes from RFC 2068This specification has been carefully audited to correct anddisambiguate key word usage; RFC 2068 had many problems in respect tothe conventions laid out in RFC 2119 [34].Clarified which error code should be used <strong>for</strong> inbound server failures(e.g. DNS failures). (Section 10.5.5).<strong>Fielding</strong>, et al. Standards Track [Page 172]RFC <strong>2616</strong> HTTP/1.1 June 1999

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!