Changeset 1436 for draft-ietf-httpbis
- Timestamp:
- 03/09/11 01:55:23 (10 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p1-messaging.xml
r1435 r1436 26 26 <!ENTITY representation "<xref target='Part3' x:rel='#representation' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 27 27 <!ENTITY header-cache-control "<xref target='Part6' x:rel='#header.cache-control' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 28 <!ENTITY header-date "<xref target='Part2' x:rel='#header.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 28 29 <!ENTITY header-expect "<xref target='Part2' x:rel='#header.expect' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 29 30 <!ENTITY header-mime-version "<xref target='Part3' x:rel='#mime-version' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 1325 1326 The field-name token labels the corresponding field-value as having the 1326 1327 semantics defined by that header field. For example, the Date header field 1327 is defined in <xref target="header.date"/>as containing the origination1328 is defined in &header-date; as containing the origination 1328 1329 timestamp for the message in which it appears. 1329 1330 </t> … … 2008 2009 <section title="Protocol Parameters" anchor="protocol.parameters"> 2009 2010 2010 <section title="Date/Time Formats: Full Date" anchor="date.time.formats.full.date">2011 <x:anchor-alias value="HTTP-date"/>2012 <t>2013 HTTP applications have historically allowed three different formats2014 for date/time stamps. However, the preferred format is a fixed-length subset2015 of that defined by <xref target="RFC1123"/>:2016 </t>2017 <figure><artwork type="example" x:indent-with=" ">2018 Sun, 06 Nov 1994 08:49:37 GMT ; RFC 11232019 </artwork></figure>2020 <t>2021 The other formats are described here only for compatibility with obsolete2022 implementations.2023 </t>2024 <figure><artwork type="example" x:indent-with=" ">2025 Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format2026 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format2027 </artwork></figure>2028 <t>2029 HTTP/1.1 clients and servers that parse a date value &MUST; accept2030 all three formats (for compatibility with HTTP/1.0), though they &MUST;2031 only generate the RFC 1123 format for representing HTTP-date values2032 in header fields.2033 </t>2034 <t>2035 All HTTP date/time stamps &MUST; be represented in Greenwich Mean Time2036 (GMT), without exception. For the purposes of HTTP, GMT is exactly2037 equal to UTC (Coordinated Universal Time). This is indicated in the2038 first two formats by the inclusion of "GMT" as the three-letter2039 abbreviation for time zone, and &MUST; be assumed when reading the2040 asctime format. HTTP-date is case sensitive and &MUST-NOT; include2041 additional whitespace beyond that specifically included as SP in the2042 grammar.2043 </t>2044 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="HTTP-date"/>2045 <x:ref>HTTP-date</x:ref> = <x:ref>rfc1123-date</x:ref> / <x:ref>obs-date</x:ref>2046 </artwork></figure>2047 <t anchor="preferred.date.format">2048 <x:anchor-alias value="rfc1123-date"/>2049 <x:anchor-alias value="time-of-day"/>2050 <x:anchor-alias value="hour"/>2051 <x:anchor-alias value="minute"/>2052 <x:anchor-alias value="second"/>2053 <x:anchor-alias value="day-name"/>2054 <x:anchor-alias value="day"/>2055 <x:anchor-alias value="month"/>2056 <x:anchor-alias value="year"/>2057 <x:anchor-alias value="GMT"/>2058 Preferred format:2059 </t>2060 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="rfc1123-date"/><iref primary="true" item="Grammar" subitem="date1"/><iref primary="true" item="Grammar" subitem="time-of-day"/><iref primary="true" item="Grammar" subitem="hour"/><iref primary="true" item="Grammar" subitem="minute"/><iref primary="true" item="Grammar" subitem="second"/><iref primary="true" item="Grammar" subitem="day-name"/><iref primary="true" item="Grammar" subitem="day-name-l"/><iref primary="true" item="Grammar" subitem="day"/><iref primary="true" item="Grammar" subitem="month"/><iref primary="true" item="Grammar" subitem="year"/><iref primary="true" item="Grammar" subitem="GMT"/>2061 <x:ref>rfc1123-date</x:ref> = <x:ref>day-name</x:ref> "," <x:ref>SP</x:ref> date1 <x:ref>SP</x:ref> <x:ref>time-of-day</x:ref> <x:ref>SP</x:ref> <x:ref>GMT</x:ref>2062 ; fixed length subset of the format defined in2063 ; <xref target="RFC1123" x:fmt="of" x:sec="5.2.14"/>2064 2065 <x:ref>day-name</x:ref> = <x:abnf-char-sequence>"Mon"</x:abnf-char-sequence> ; "Mon", case-sensitive2066 / <x:abnf-char-sequence>"Tue"</x:abnf-char-sequence> ; "Tue", case-sensitive2067 / <x:abnf-char-sequence>"Wed"</x:abnf-char-sequence> ; "Wed", case-sensitive2068 / <x:abnf-char-sequence>"Thu"</x:abnf-char-sequence> ; "Thu", case-sensitive2069 / <x:abnf-char-sequence>"Fri"</x:abnf-char-sequence> ; "Fri", case-sensitive2070 / <x:abnf-char-sequence>"Sat"</x:abnf-char-sequence> ; "Sat", case-sensitive2071 / <x:abnf-char-sequence>"Sun"</x:abnf-char-sequence> ; "Sun", case-sensitive2072 2073 <x:ref>date1</x:ref> = <x:ref>day</x:ref> <x:ref>SP</x:ref> <x:ref>month</x:ref> <x:ref>SP</x:ref> <x:ref>year</x:ref>2074 ; e.g., 02 Jun 19822075 2076 <x:ref>day</x:ref> = 2<x:ref>DIGIT</x:ref>2077 <x:ref>month</x:ref> = <x:abnf-char-sequence>"Jan"</x:abnf-char-sequence> ; "Jan", case-sensitive2078 / <x:abnf-char-sequence>"Feb"</x:abnf-char-sequence> ; "Feb", case-sensitive2079 / <x:abnf-char-sequence>"Mar"</x:abnf-char-sequence> ; "Mar", case-sensitive2080 / <x:abnf-char-sequence>"Apr"</x:abnf-char-sequence> ; "Apr", case-sensitive2081 / <x:abnf-char-sequence>"May"</x:abnf-char-sequence> ; "May", case-sensitive2082 / <x:abnf-char-sequence>"Jun"</x:abnf-char-sequence> ; "Jun", case-sensitive2083 / <x:abnf-char-sequence>"Jul"</x:abnf-char-sequence> ; "Jul", case-sensitive2084 / <x:abnf-char-sequence>"Aug"</x:abnf-char-sequence> ; "Aug", case-sensitive2085 / <x:abnf-char-sequence>"Sep"</x:abnf-char-sequence> ; "Sep", case-sensitive2086 / <x:abnf-char-sequence>"Oct"</x:abnf-char-sequence> ; "Oct", case-sensitive2087 / <x:abnf-char-sequence>"Nov"</x:abnf-char-sequence> ; "Nov", case-sensitive2088 / <x:abnf-char-sequence>"Dec"</x:abnf-char-sequence> ; "Dec", case-sensitive2089 <x:ref>year</x:ref> = 4<x:ref>DIGIT</x:ref>2090 2091 <x:ref>GMT</x:ref> = <x:abnf-char-sequence>"GMT"</x:abnf-char-sequence> ; "GMT", case-sensitive2092 2093 <x:ref>time-of-day</x:ref> = <x:ref>hour</x:ref> ":" <x:ref>minute</x:ref> ":" <x:ref>second</x:ref>2094 ; 00:00:00 - 23:59:592095 2096 <x:ref>hour</x:ref> = 2<x:ref>DIGIT</x:ref>2097 <x:ref>minute</x:ref> = 2<x:ref>DIGIT</x:ref>2098 <x:ref>second</x:ref> = 2<x:ref>DIGIT</x:ref>2099 </artwork></figure>2100 <t>2101 The semantics of <x:ref>day-name</x:ref>, <x:ref>day</x:ref>,2102 <x:ref>month</x:ref>, <x:ref>year</x:ref>, and <x:ref>time-of-day</x:ref> are the2103 same as those defined for the RFC 5322 constructs2104 with the corresponding name (<xref target="RFC5322" x:fmt="," x:sec="3.3"/>).2105 </t>2106 <t anchor="obsolete.date.formats">2107 <x:anchor-alias value="obs-date"/>2108 <x:anchor-alias value="rfc850-date"/>2109 <x:anchor-alias value="asctime-date"/>2110 <x:anchor-alias value="date1"/>2111 <x:anchor-alias value="date2"/>2112 <x:anchor-alias value="date3"/>2113 <x:anchor-alias value="rfc1123-date"/>2114 <x:anchor-alias value="day-name-l"/>2115 Obsolete formats:2116 </t>2117 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="obs-date"/>2118 <x:ref>obs-date</x:ref> = <x:ref>rfc850-date</x:ref> / <x:ref>asctime-date</x:ref>2119 </artwork></figure>2120 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="rfc850-date"/>2121 <x:ref>rfc850-date</x:ref> = <x:ref>day-name-l</x:ref> "," <x:ref>SP</x:ref> <x:ref>date2</x:ref> <x:ref>SP</x:ref> <x:ref>time-of-day</x:ref> <x:ref>SP</x:ref> <x:ref>GMT</x:ref>2122 <x:ref>date2</x:ref> = <x:ref>day</x:ref> "-" <x:ref>month</x:ref> "-" 2<x:ref>DIGIT</x:ref>2123 ; day-month-year (e.g., 02-Jun-82)2124 2125 <x:ref>day-name-l</x:ref> = <x:abnf-char-sequence>"Monday"</x:abnf-char-sequence> ; "Monday", case-sensitive2126 / <x:abnf-char-sequence>"Tuesday"</x:abnf-char-sequence> ; "Tuesday", case-sensitive2127 / <x:abnf-char-sequence>"Wednesday"</x:abnf-char-sequence> ; "Wednesday", case-sensitive2128 / <x:abnf-char-sequence>"Thursday"</x:abnf-char-sequence> ; "Thursday", case-sensitive2129 / <x:abnf-char-sequence>"Friday"</x:abnf-char-sequence> ; "Friday", case-sensitive2130 / <x:abnf-char-sequence>"Saturday"</x:abnf-char-sequence> ; "Saturday", case-sensitive2131 / <x:abnf-char-sequence>"Sunday"</x:abnf-char-sequence> ; "Sunday", case-sensitive2132 </artwork></figure>2133 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="asctime-date"/>2134 <x:ref>asctime-date</x:ref> = <x:ref>day-name</x:ref> <x:ref>SP</x:ref> <x:ref>date3</x:ref> <x:ref>SP</x:ref> <x:ref>time-of-day</x:ref> <x:ref>SP</x:ref> <x:ref>year</x:ref>2135 <x:ref>date3</x:ref> = <x:ref>month</x:ref> <x:ref>SP</x:ref> ( 2<x:ref>DIGIT</x:ref> / ( <x:ref>SP</x:ref> 1<x:ref>DIGIT</x:ref> ))2136 ; month day (e.g., Jun 2)2137 </artwork></figure>2138 <x:note>2139 <t>2140 <x:h>Note:</x:h> Recipients of date values are encouraged to be robust in2141 accepting date values that might have been sent by non-HTTP2142 applications, as is sometimes the case when retrieving or posting2143 messages via proxies/gateways to SMTP or NNTP.2144 </t>2145 </x:note>2146 <x:note>2147 <t>2148 <x:h>Note:</x:h> HTTP requirements for the date/time stamp format apply only2149 to their usage within the protocol stream. Clients and servers are2150 not required to use these formats for user presentation, request2151 logging, etc.2152 </t>2153 </x:note>2154 </section>2155 2156 2011 <section title="Transfer Codings" anchor="transfer.codings"> 2157 2012 <x:anchor-alias value="transfer-coding"/> … … 3043 2898 <c>Connection</c> <c><xref target="header.connection"/></c> 3044 2899 <c>Content-Length</c> <c><xref target="header.content-length"/></c> 3045 <c>Date</c> <c><xref target="header.date"/></c>3046 2900 <c>Host</c> <c><xref target="header.host"/></c> 3047 2901 <c>TE</c> <c><xref target="header.te"/></c> … … 3178 3032 used within the "message/external-body" content-type. 3179 3033 </t> 3180 </section>3181 3182 <section title="Date" anchor="header.date">3183 <iref primary="true" item="Date header field" x:for-anchor=""/>3184 <iref primary="true" item="Header Fields" subitem="Date" x:for-anchor=""/>3185 <x:anchor-alias value="Date"/>3186 <t>3187 The "Date" header field represents the date and time at which3188 the message was originated, having the same semantics as the Origination3189 Date Field (orig-date) defined in <xref target="RFC5322" x:fmt="of" x:sec="3.6.1"/>.3190 The field value is an HTTP-date, as described in <xref target="date.time.formats.full.date"/>;3191 it &MUST; be sent in rfc1123-date format.3192 </t>3193 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Date"/>3194 <x:ref>Date</x:ref> = <x:ref>HTTP-date</x:ref>3195 </artwork></figure>3196 <t>3197 An example is3198 </t>3199 <figure><artwork type="example">3200 Date: Tue, 15 Nov 1994 08:12:31 GMT3201 </artwork></figure>3202 <t>3203 Origin servers &MUST; include a Date header field in all responses,3204 except in these cases:3205 <list style="numbers">3206 <t>If the response status code is 100 (Continue) or 101 (Switching3207 Protocols), the response &MAY; include a Date header field, at3208 the server's option.</t>3209 3210 <t>If the response status code conveys a server error, e.g., 5003211 (Internal Server Error) or 503 (Service Unavailable), and it is3212 inconvenient or impossible to generate a valid Date.</t>3213 3214 <t>If the server does not have a clock that can provide a3215 reasonable approximation of the current time, its responses3216 &MUST-NOT; include a Date header field. In this case, the rules3217 in <xref target="clockless.origin.server.operation"/> &MUST; be followed.</t>3218 </list>3219 </t>3220 <t>3221 A received message that does not have a Date header field &MUST; be3222 assigned one by the recipient if the message will be cached by that3223 recipient.3224 </t>3225 <t>3226 Clients can use the Date header field as well; in order to keep request3227 messages small, they are advised not to include it when it doesn't convey3228 any useful information (as it is usually the case for requests that do not3229 contain a payload).3230 </t>3231 <t>3232 The HTTP-date sent in a Date header field &SHOULD-NOT; represent a date and3233 time subsequent to the generation of the message. It &SHOULD; represent3234 the best available approximation of the date and time of message3235 generation, unless the implementation has no means of generating a3236 reasonably accurate date and time. In theory, the date ought to3237 represent the moment just before the payload is generated. In3238 practice, the date can be generated at any time during the message3239 origination without affecting its semantic value.3240 </t>3241 3242 <section title="Clockless Origin Server Operation" anchor="clockless.origin.server.operation">3243 <t>3244 Some origin server implementations might not have a clock available.3245 An origin server without a clock &MUST-NOT; assign Expires or Last-Modified3246 values to a response, unless these values were associated3247 with the resource by a system or user with a reliable clock. It &MAY;3248 assign an Expires value that is known, at or before server3249 configuration time, to be in the past (this allows "pre-expiration"3250 of responses without storing separate Expires values for each3251 resource).3252 </t>3253 </section>3254 3034 </section> 3255 3035 … … 3701 3481 <c> 3702 3482 <xref target="header.content-length"/> 3703 </c>3704 <c>Date</c>3705 <c>http</c>3706 <c>standard</c>3707 <c>3708 <xref target="header.date"/>3709 3483 </c> 3710 3484 <c>Host</c> … … 4658 4432 </reference> 4659 4433 4660 <reference anchor="RFC1123">4661 <front>4662 <title>Requirements for Internet Hosts - Application and Support</title>4663 <author initials="R." surname="Braden" fullname="Robert Braden">4664 <organization>University of Southern California (USC), Information Sciences Institute</organization>4665 <address><email>Braden@ISI.EDU</email></address>4666 </author>4667 <date month="October" year="1989"/>4668 </front>4669 <seriesInfo name="STD" value="3"/>4670 <seriesInfo name="RFC" value="1123"/>4671 </reference>4672 4673 4434 <reference anchor='RFC1919'> 4674 4435 <front> … … 5261 5022 <x:ref>Content-Length</x:ref> = 1*DIGIT 5262 5023 5263 <x:ref>Date</x:ref> = HTTP-date5264 5265 <x:ref>GMT</x:ref> = %x47.4D.54 ; GMT5266 5267 5024 <x:ref>HTTP-Prot-Name</x:ref> = %x48.54.54.50 ; HTTP 5268 5025 <x:ref>HTTP-Version</x:ref> = HTTP-Prot-Name "/" DIGIT "." DIGIT 5269 <x:ref>HTTP-date</x:ref> = rfc1123-date / obs-date5270 5026 <x:ref>HTTP-message</x:ref> = start-line *( header-field CRLF ) CRLF [ message-body 5271 5027 ] … … 5296 5052 5297 5053 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in [RFC3986], Section 4.3> 5298 <x:ref>asctime-date</x:ref> = day-name SP date3 SP time-of-day SP year5299 5054 <x:ref>attribute</x:ref> = token 5300 5055 <x:ref>authority</x:ref> = <authority, defined in [RFC3986], Section 3.2> … … 5313 5068 / obs-text 5314 5069 5315 <x:ref>date1</x:ref> = day SP month SP year5316 <x:ref>date2</x:ref> = day "-" month "-" 2DIGIT5317 <x:ref>date3</x:ref> = month SP ( 2DIGIT / ( SP DIGIT ) )5318 <x:ref>day</x:ref> = 2DIGIT5319 <x:ref>day-name</x:ref> = %x4D.6F.6E ; Mon5320 / %x54.75.65 ; Tue5321 / %x57.65.64 ; Wed5322 / %x54.68.75 ; Thu5323 / %x46.72.69 ; Fri5324 / %x53.61.74 ; Sat5325 / %x53.75.6E ; Sun5326 <x:ref>day-name-l</x:ref> = %x4D.6F.6E.64.61.79 ; Monday5327 / %x54.75.65.73.64.61.79 ; Tuesday5328 / %x57.65.64.6E.65.73.64.61.79 ; Wednesday5329 / %x54.68.75.72.73.64.61.79 ; Thursday5330 / %x46.72.69.64.61.79 ; Friday5331 / %x53.61.74.75.72.64.61.79 ; Saturday5332 / %x53.75.6E.64.61.79 ; Sunday5333 5334 5070 <x:ref>field-content</x:ref> = *( HTAB / SP / VCHAR / obs-text ) 5335 5071 <x:ref>field-name</x:ref> = token … … 5337 5073 5338 5074 <x:ref>header-field</x:ref> = field-name ":" OWS field-value BWS 5339 <x:ref>hour</x:ref> = 2DIGIT5340 5075 <x:ref>http-URI</x:ref> = "http://" authority path-abempty [ "?" query ] 5341 5076 <x:ref>https-URI</x:ref> = "https://" authority path-abempty [ "?" query ] … … 5344 5079 5345 5080 <x:ref>message-body</x:ref> = *OCTET 5346 <x:ref>minute</x:ref> = 2DIGIT 5347 <x:ref>month</x:ref> = %x4A.61.6E ; Jan 5348 / %x46.65.62 ; Feb 5349 / %x4D.61.72 ; Mar 5350 / %x41.70.72 ; Apr 5351 / %x4D.61.79 ; May 5352 / %x4A.75.6E ; Jun 5353 / %x4A.75.6C ; Jul 5354 / %x41.75.67 ; Aug 5355 / %x53.65.70 ; Sep 5356 / %x4F.63.74 ; Oct 5357 / %x4E.6F.76 ; Nov 5358 / %x44.65.63 ; Dec 5359 5360 <x:ref>obs-date</x:ref> = rfc850-date / asctime-date 5081 5361 5082 <x:ref>obs-fold</x:ref> = CRLF ( SP / HTAB ) 5362 5083 <x:ref>obs-text</x:ref> = %x80-FF … … 5390 5111 <x:ref>request-target</x:ref> = "*" / absolute-URI / ( path-absolute [ "?" query ] ) 5391 5112 / authority 5392 <x:ref>rfc1123-date</x:ref> = day-name "," SP date1 SP time-of-day SP GMT 5393 <x:ref>rfc850-date</x:ref> = day-name-l "," SP date2 SP time-of-day SP GMT 5394 5395 <x:ref>second</x:ref> = 2DIGIT 5113 5396 5114 <x:ref>special</x:ref> = "(" / ")" / "<" / ">" / "@" / "," / ";" / ":" / "\" / 5397 5115 DQUOTE / "/" / "[" / "]" / "?" / "=" / "{" / "}" … … 5403 5121 <x:ref>te-ext</x:ref> = OWS ";" OWS token [ "=" word ] 5404 5122 <x:ref>te-params</x:ref> = OWS ";" OWS "q=" qvalue *te-ext 5405 <x:ref>time-of-day</x:ref> = hour ":" minute ":" second5406 5123 <x:ref>token</x:ref> = 1*tchar 5407 5124 <x:ref>trailer-part</x:ref> = *( header-field CRLF ) … … 5416 5133 5417 5134 <x:ref>word</x:ref> = token / quoted-string 5418 5419 <x:ref>year</x:ref> = 4DIGIT5420 5135 </artwork> 5421 5136 </figure> … … 5424 5139 ; Connection defined but not used 5425 5140 ; Content-Length defined but not used 5426 ; Date defined but not used5427 5141 ; HTTP-message defined but not used 5428 5142 ; Host defined but not used -
draft-ietf-httpbis/latest/p2-semantics.html
r1435 r1436 388 388 <link rel="Chapter" title="6 Method Definitions" href="#rfc.section.6"> 389 389 <link rel="Chapter" title="7 Status Code Definitions" href="#rfc.section.7"> 390 <link rel="Chapter" title="8 Header Field Definitions" href="#rfc.section.8"> 391 <link rel="Chapter" title="9 IANA Considerations" href="#rfc.section.9"> 392 <link rel="Chapter" title="10 Security Considerations" href="#rfc.section.10"> 393 <link rel="Chapter" title="11 Acknowledgments" href="#rfc.section.11"> 394 <link rel="Chapter" href="#rfc.section.12" title="12 References"> 390 <link rel="Chapter" title="8 Date/Time Formats" href="#rfc.section.8"> 391 <link rel="Chapter" title="9 Header Field Definitions" href="#rfc.section.9"> 392 <link rel="Chapter" title="10 IANA Considerations" href="#rfc.section.10"> 393 <link rel="Chapter" title="11 Security Considerations" href="#rfc.section.11"> 394 <link rel="Chapter" title="12 Acknowledgments" href="#rfc.section.12"> 395 <link rel="Chapter" href="#rfc.section.13" title="13 References"> 395 396 <link rel="Appendix" title="A Changes from RFC 2616" href="#rfc.section.A"> 396 397 <link rel="Appendix" title="B Collected ABNF" href="#rfc.section.B"> … … 654 655 </ul> 655 656 </li> 656 <li>8. <a href="#header.field.definitions">Header Field Definitions</a><ul> 657 <li>8.1 <a href="#header.allow">Allow</a></li> 658 <li>8.2 <a href="#header.expect">Expect</a></li> 659 <li>8.3 <a href="#header.from">From</a></li> 660 <li>8.4 <a href="#header.location">Location</a></li> 661 <li>8.5 <a href="#header.max-forwards">Max-Forwards</a></li> 662 <li>8.6 <a href="#header.referer">Referer</a></li> 663 <li>8.7 <a href="#header.retry-after">Retry-After</a></li> 664 <li>8.8 <a href="#header.server">Server</a></li> 665 <li>8.9 <a href="#header.user-agent">User-Agent</a></li> 657 <li>8. <a href="#http.date">Date/Time Formats</a></li> 658 <li>9. <a href="#header.field.definitions">Header Field Definitions</a><ul> 659 <li>9.1 <a href="#header.allow">Allow</a></li> 660 <li>9.2 <a href="#header.date">Date</a></li> 661 <li>9.3 <a href="#header.expect">Expect</a></li> 662 <li>9.4 <a href="#header.from">From</a></li> 663 <li>9.5 <a href="#header.location">Location</a></li> 664 <li>9.6 <a href="#header.max-forwards">Max-Forwards</a></li> 665 <li>9.7 <a href="#header.referer">Referer</a></li> 666 <li>9.8 <a href="#header.retry-after">Retry-After</a></li> 667 <li>9.9 <a href="#header.server">Server</a></li> 668 <li>9.10 <a href="#header.user-agent">User-Agent</a></li> 666 669 </ul> 667 670 </li> 668 <li> 9. <a href="#IANA.considerations">IANA Considerations</a><ul>669 <li> 9.1 <a href="#method.registration">Method Registry</a></li>670 <li> 9.2 <a href="#status.code.registration">Status Code Registry</a></li>671 <li> 9.3 <a href="#header.field.registration">Header Field Registration</a></li>671 <li>10. <a href="#IANA.considerations">IANA Considerations</a><ul> 672 <li>10.1 <a href="#method.registration">Method Registry</a></li> 673 <li>10.2 <a href="#status.code.registration">Status Code Registry</a></li> 674 <li>10.3 <a href="#header.field.registration">Header Field Registration</a></li> 672 675 </ul> 673 676 </li> 674 <li>1 0. <a href="#security.considerations">Security Considerations</a><ul>675 <li>1 0.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li>676 <li>1 0.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li>677 <li>1 0.3 <a href="#location.spoofing">Location Headers and Spoofing</a></li>678 <li>1 0.4 <a href="#rfc.section.10.4">Security Considerations for CONNECT</a></li>677 <li>11. <a href="#security.considerations">Security Considerations</a><ul> 678 <li>11.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li> 679 <li>11.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li> 680 <li>11.3 <a href="#location.spoofing">Location Headers and Spoofing</a></li> 681 <li>11.4 <a href="#rfc.section.11.4">Security Considerations for CONNECT</a></li> 679 682 </ul> 680 683 </li> 681 <li>1 1. <a href="#acks">Acknowledgments</a></li>682 <li>1 2. <a href="#rfc.references">References</a><ul>683 <li>1 2.1 <a href="#rfc.references.1">Normative References</a></li>684 <li>1 2.2 <a href="#rfc.references.2">Informative References</a></li>684 <li>12. <a href="#acks">Acknowledgments</a></li> 685 <li>13. <a href="#rfc.references">References</a><ul> 686 <li>13.1 <a href="#rfc.references.1">Normative References</a></li> 687 <li>13.2 <a href="#rfc.references.2">Informative References</a></li> 685 688 </ul> 686 689 </li> … … 751 754 <div id="rfc.figure.u.2"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">absolute-URI</a> = <absolute-URI, defined in <a href="#Part1" id="rfc.xref.Part1.9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 752 755 <a href="#abnf.dependencies" class="smpl">comment</a> = <comment, defined in <a href="#Part1" id="rfc.xref.Part1.10"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a>> 753 <a href="#abnf.dependencies" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part1" id="rfc.xref.Part1.11"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#date.time.formats.full.date" title="Date/Time Formats: Full Date">Section 5.1</a>> 754 <a href="#abnf.dependencies" class="smpl">partial-URI</a> = <partial-URI, defined in <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 755 <a href="#abnf.dependencies" class="smpl">product</a> = <product, defined in <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 5.3</a>> 756 <a href="#abnf.dependencies" class="smpl">URI-reference</a> = <URI-reference, defined in <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 756 <a href="#abnf.dependencies" class="smpl">partial-URI</a> = <partial-URI, defined in <a href="#Part1" id="rfc.xref.Part1.11"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 757 <a href="#abnf.dependencies" class="smpl">product</a> = <product, defined in <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 5.2</a>> 758 <a href="#abnf.dependencies" class="smpl">URI-reference</a> = <URI-reference, defined in <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 757 759 </pre><h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a> <a id="method" href="#method">Method</a></h1> 758 <p id="rfc.section.2.p.1">The Method token indicates the request method to be performed on the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The method is case-sensitive.760 <p id="rfc.section.2.p.1">The Method token indicates the request method to be performed on the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The method is case-sensitive. 759 761 </p> 760 762 <div id="rfc.figure.u.3"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#method" class="smpl">Method</a> = <a href="#core.rules" class="smpl">token</a> 761 </pre><p id="rfc.section.2.p.3">The list of methods allowed by a resource can be specified in an Allow header field (<a href="#header.allow" id="rfc.xref.header.allow.1" title="Allow">Section 8.1</a>). The status code of the response always notifies the client whether a method is currently allowed on a resource, since the763 </pre><p id="rfc.section.2.p.3">The list of methods allowed by a resource can be specified in an Allow header field (<a href="#header.allow" id="rfc.xref.header.allow.1" title="Allow">Section 9.1</a>). The status code of the response always notifies the client whether a method is currently allowed on a resource, since the 762 764 set of allowed methods can change dynamically. An origin server <em class="bcp14">SHOULD</em> respond with the status code 405 (Method Not Allowed) if the method is known by the origin server but not allowed for the 763 765 resource, and 501 (Not Implemented) if the method is unrecognized or not implemented by the origin server. The methods GET … … 835 837 to a single application, so that this is clear. 836 838 </p> 837 <p id="rfc.section.2.2.1.p.3">Due to the parsing rules defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, definitions of HTTP methods cannot prohibit the presence of a message-body on either the request or the response message839 <p id="rfc.section.2.2.1.p.3">Due to the parsing rules defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, definitions of HTTP methods cannot prohibit the presence of a message-body on either the request or the response message 838 840 (with responses to HEAD requests being the single exception). Definitions of new methods cannot change this rule, but they 839 841 can specify that only zero-length bodies (as opposed to absent bodies) are allowed. … … 844 846 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="header.fields" href="#header.fields">Header Fields</a></h1> 845 847 <p id="rfc.section.3.p.1">Header fields are key value pairs that can be used to communicate data about the message, its payload, the target resource, 846 or about the connection itself (i.e., control data). See <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.1 7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for a general definition of their syntax.848 or about the connection itself (i.e., control data). See <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.16"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for a general definition of their syntax. 847 849 </p> 848 850 <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a> <a id="considerations.for.creating.header.fields" href="#considerations.for.creating.header.fields">Considerations for Creating Header Fields</a></h2> … … 852 854 with "X-" if they are to be registered (either immediately or in the future). 853 855 </p> 854 <p id="rfc.section.3.1.p.3">New header field values typically have their syntax defined using ABNF (<a href="#RFC5234" id="rfc.xref.RFC5234.3"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>), using the extensions defined in <a href="p1-messaging.html#notation.abnf" title="ABNF Extension: #rule">Section 1.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.1 8"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> as necessary, and are usually constrained to the range of ASCII characters. Header fields needing a greater range of characters856 <p id="rfc.section.3.1.p.3">New header field values typically have their syntax defined using ABNF (<a href="#RFC5234" id="rfc.xref.RFC5234.3"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>), using the extensions defined in <a href="p1-messaging.html#notation.abnf" title="ABNF Extension: #rule">Section 1.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.17"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> as necessary, and are usually constrained to the range of ASCII characters. Header fields needing a greater range of characters 855 857 can use an encoding such as the one defined in <a href="#RFC5987" id="rfc.xref.RFC5987.1"><cite title="Character Set and Language Encoding for Hypertext Transfer Protocol (HTTP) Header Field Parameters">[RFC5987]</cite></a>. 856 858 </p> 857 859 <p id="rfc.section.3.1.p.4">Because commas (",") are used as a generic delimiter between field-values, they need to be treated with care if they are allowed 858 860 in the field-value's payload. Typically, components that might contain a comma are protected with double-quotes using the 859 quoted-string ABNF production (<a href="p1-messaging.html#field.rules" title="Common Field ABNF Rules">Section 3.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).861 quoted-string ABNF production (<a href="p1-messaging.html#field.rules" title="Common Field ABNF Rules">Section 3.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.18"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 860 862 </p> 861 863 <p id="rfc.section.3.1.p.5">For example, a textual date and a URI (either of which might contain a comma) could be safely carried in field-values like … … 867 869 </pre><p id="rfc.section.3.1.p.7">Authors of specifications defining new header fields are advised to consider documenting: </p> 868 870 <ul> 869 <li>Whether the field is a single value, or whether it can be a list (delimited by commas; see <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1. 20"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).871 <li>Whether the field is a single value, or whether it can be a list (delimited by commas; see <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.19"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 870 872 </li> 871 873 <li>Under what conditions the header field can be used; e.g., only i responses or requests, in all messages, only on responses 872 874 to a particular request method. 873 875 </li> 874 <li>Whether it is appropriate to list the field-name in the Connection header (i.e., if the header is to be hop-by-hop, see <a href="p1-messaging.html#header.connection" title="Connection">Section 8.1</a> of <a href="#Part1" id="rfc.xref.Part1.2 1"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).876 <li>Whether it is appropriate to list the field-name in the Connection header (i.e., if the header is to be hop-by-hop, see <a href="p1-messaging.html#header.connection" title="Connection">Section 8.1</a> of <a href="#Part1" id="rfc.xref.Part1.20"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 875 877 </li> 876 878 <li>Under what conditions intermediaries are allowed to modify the header field's value, insert or delete it.</li> 877 879 <li>How the header might interact with caching (see <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 878 880 </li> 879 <li>Whether the header field is useful or allowable in trailers (see <a href="p1-messaging.html#chunked.encoding" title="Chunked Transfer Coding">Section 5. 2.1</a> of <a href="#Part1" id="rfc.xref.Part1.22"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).881 <li>Whether the header field is useful or allowable in trailers (see <a href="p1-messaging.html#chunked.encoding" title="Chunked Transfer Coding">Section 5.1.1</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 880 882 </li> 881 883 <li>Whether the header field should be preserved across redirects.</li> … … 917 919 <tr> 918 920 <td class="left">Expect</td> 919 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 8.2</a></td>921 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 9.3</a></td> 920 922 </tr> 921 923 <tr> 922 924 <td class="left">From</td> 923 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 8.3</a></td>925 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 9.4</a></td> 924 926 </tr> 925 927 <tr> 926 928 <td class="left">Host</td> 927 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 8. 4</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td>929 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 8.3</a> of <a href="#Part1" id="rfc.xref.Part1.22"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td> 928 930 </tr> 929 931 <tr> 930 932 <td class="left">If-Match</td> 931 <td class="left"><a href="p4-conditional.html#header.if-match" title=" If-Match">Section 3.1</a> of <a href="#Part4" id="rfc.xref.Part4.1"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>933 <td class="left"><a href="p4-conditional.html#header.if-match" title="ERROR: Anchor 'header.if-match' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'header.if-match' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.1"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 932 934 </tr> 933 935 <tr> 934 936 <td class="left">If-Modified-Since</td> 935 <td class="left"><a href="p4-conditional.html#header.if-modified-since" title=" If-Modified-Since">Section 3.3</a> of <a href="#Part4" id="rfc.xref.Part4.2"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>937 <td class="left"><a href="p4-conditional.html#header.if-modified-since" title="ERROR: Anchor 'header.if-modified-since' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'header.if-modified-since' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.2"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 936 938 </tr> 937 939 <tr> 938 940 <td class="left">If-None-Match</td> 939 <td class="left"><a href="p4-conditional.html#header.if-none-match" title=" If-None-Match">Section 3.2</a> of <a href="#Part4" id="rfc.xref.Part4.3"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>941 <td class="left"><a href="p4-conditional.html#header.if-none-match" title="ERROR: Anchor 'header.if-none-match' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'header.if-none-match' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.3"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 940 942 </tr> 941 943 <tr> … … 945 947 <tr> 946 948 <td class="left">If-Unmodified-Since</td> 947 <td class="left"><a href="p4-conditional.html#header.if-unmodified-since" title=" If-Unmodified-Since">Section 3.4</a> of <a href="#Part4" id="rfc.xref.Part4.4"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>949 <td class="left"><a href="p4-conditional.html#header.if-unmodified-since" title="ERROR: Anchor 'header.if-unmodified-since' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'header.if-unmodified-since' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.4"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 948 950 </tr> 949 951 <tr> 950 952 <td class="left">Max-Forwards</td> 951 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 8.5</a></td>953 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 9.6</a></td> 952 954 </tr> 953 955 <tr> … … 961 963 <tr> 962 964 <td class="left">Referer</td> 963 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 8.6</a></td>965 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 9.7</a></td> 964 966 </tr> 965 967 <tr> 966 968 <td class="left">TE</td> 967 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 8. 5</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td>969 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 8.4</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td> 968 970 </tr> 969 971 <tr> 970 972 <td class="left">User-Agent</td> 971 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 8.9</a></td>973 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 9.10</a></td> 972 974 </tr> 973 975 </tbody> … … 976 978 <h2 id="rfc.section.3.3"><a href="#rfc.section.3.3">3.3</a> <a id="response.header.fields" href="#response.header.fields">Response Header Fields</a></h2> 977 979 <p id="rfc.section.3.3.p.1">The response header fields allow the server to pass additional information about the response which cannot be placed in the 978 Status-Line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.2 5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).980 Status-Line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 979 981 </p> 980 982 <div id="rfc.table.u.3"> … … 997 999 <tr> 998 1000 <td class="left">Allow</td> 999 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 8.1</a></td> 1001 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 9.1</a></td> 1002 </tr> 1003 <tr> 1004 <td class="left">Date</td> 1005 <td class="left"><a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 9.2</a></td> 1000 1006 </tr> 1001 1007 <tr> 1002 1008 <td class="left">ETag</td> 1003 <td class="left"><a href="p4-conditional.html#header.etag" title="E Tag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.5"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1009 <td class="left"><a href="p4-conditional.html#header.etag" title="ERROR: Anchor 'header.etag' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'header.etag' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.5"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1004 1010 </tr> 1005 1011 <tr> 1006 1012 <td class="left">Location</td> 1007 <td class="left"><a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 8.4</a></td>1013 <td class="left"><a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 9.5</a></td> 1008 1014 </tr> 1009 1015 <tr> … … 1013 1019 <tr> 1014 1020 <td class="left">Retry-After</td> 1015 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 8.7</a></td>1021 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 9.8</a></td> 1016 1022 </tr> 1017 1023 <tr> 1018 1024 <td class="left">Server</td> 1019 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 8.8</a></td>1025 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 9.9</a></td> 1020 1026 </tr> 1021 1027 <tr> … … 1044 1050 </p> 1045 1051 <h2 id="rfc.section.4.1"><a href="#rfc.section.4.1">4.1</a> <a id="overview.of.status.codes" href="#overview.of.status.codes">Overview of Status Codes</a></h2> 1046 <p id="rfc.section.4.1.p.1">The status codes listed below are defined in <a href="#status.codes" title="Status Code Definitions">Section 7</a> of this specification, <a href="p4-conditional.html#status.code.definitions" title=" Status Code Definitions">Section 4</a> of <a href="#Part4" id="rfc.xref.Part4.6"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>, <a href="p5-range.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part5" id="rfc.xref.Part5.4"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>, and <a href="p7-auth.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part7" id="rfc.xref.Part7.5"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>. The reason phrases listed here are only recommendations — they can be replaced by local equivalents without affecting the1052 <p id="rfc.section.4.1.p.1">The status codes listed below are defined in <a href="#status.codes" title="Status Code Definitions">Section 7</a> of this specification, <a href="p4-conditional.html#status.code.definitions" title="ERROR: Anchor 'status.code.definitions' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'status.code.definitions' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.6"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>, <a href="p5-range.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part5" id="rfc.xref.Part5.4"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>, and <a href="p7-auth.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part7" id="rfc.xref.Part7.5"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>. The reason phrases listed here are only recommendations — they can be replaced by local equivalents without affecting the 1047 1053 protocol. 1048 1054 </p> … … 1125 1131 <td class="left">304</td> 1126 1132 <td class="left">Not Modified</td> 1127 <td class="left"><a href="p4-conditional.html#status.304" title=" 304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4.7"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1133 <td class="left"><a href="p4-conditional.html#status.304" title="ERROR: Anchor 'status.304' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'status.304' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.7"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1128 1134 </tr> 1129 1135 <tr> … … 1200 1206 <td class="left">412</td> 1201 1207 <td class="left">Precondition Failed</td> 1202 <td class="left"><a href="p4-conditional.html#status.412" title=" 412 Precondition Failed">Section 4.2</a> of <a href="#Part4" id="rfc.xref.Part4.8"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1208 <td class="left"><a href="p4-conditional.html#status.412" title="ERROR: Anchor 'status.412' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'status.412' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.8"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1203 1209 </tr> 1204 1210 <tr> … … 1294 1300 in an HTTP message, it is referred to as the payload of the message. HTTP representations are defined in <a href="#Part3" id="rfc.xref.Part3.5"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 1295 1301 </p> 1296 <p id="rfc.section.5.p.2">A representation body is only present in a message when a message-body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.2 6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The representation body is obtained from the message-body by decoding any Transfer-Encoding that might have been applied1302 <p id="rfc.section.5.p.2">A representation body is only present in a message when a message-body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.25"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The representation body is obtained from the message-body by decoding any Transfer-Encoding that might have been applied 1297 1303 to ensure safe and proper transfer of the message. 1298 1304 </p> … … 1300 1306 <p id="rfc.section.5.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p> 1301 1307 <p id="rfc.section.5.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p> 1302 <p id="rfc.section.5.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.2 7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following1308 <p id="rfc.section.5.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.26"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following 1303 1309 rules are used (with the first applicable one being selected): 1304 1310 </p> … … 1370 1376 but might be defined by future extensions to HTTP. Content negotiation <em class="bcp14">MAY</em> be used to select the appropriate response format. If no response body is included, the response <em class="bcp14">MUST</em> include a Content-Length field with a field-value of "0". 1371 1377 </p> 1372 <p id="rfc.section.6.2.p.7">The Max-Forwards header field <em class="bcp14">MAY</em> be used to target a specific proxy in the request chain (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 8.5</a>). If no Max-Forwards field is present in the request, then the forwarded request <em class="bcp14">MUST NOT</em> include a Max-Forwards field.1378 <p id="rfc.section.6.2.p.7">The Max-Forwards header field <em class="bcp14">MAY</em> be used to target a specific proxy in the request chain (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 9.6</a>). If no Max-Forwards field is present in the request, then the forwarded request <em class="bcp14">MUST NOT</em> include a Max-Forwards field. 1373 1379 </p> 1374 1380 <h2 id="rfc.section.6.3"><a href="#rfc.section.6.3">6.3</a> <a id="GET" href="#GET">GET</a></h2> … … 1394 1400 <p id="rfc.section.6.3.p.6">The response to a GET request is cacheable and <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests (see <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1395 1401 </p> 1396 <p id="rfc.section.6.3.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 1 0.2</a> for security considerations when used for forms.1402 <p id="rfc.section.6.3.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 11.2</a> for security considerations when used for forms. 1397 1403 </p> 1398 1404 <h2 id="rfc.section.6.4"><a href="#rfc.section.6.4">6.4</a> <a id="HEAD" href="#HEAD">HEAD</a></h2> … … 1430 1436 </p> 1431 1437 <p id="rfc.section.6.5.p.4">If a resource has been created on the origin server, the response <em class="bcp14">SHOULD</em> be 201 (Created) and contain a representation which describes the status of the request and refers to the new resource, and 1432 a Location header field (see <a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 8.4</a>).1438 a Location header field (see <a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 9.5</a>). 1433 1439 </p> 1434 1440 <p id="rfc.section.6.5.p.5">Responses to POST requests are only cacheable when they include explicit freshness information (see <a href="p6-cache.html#calculating.freshness.lifetime" title="Calculating Freshness Lifetime">Section 2.3.1</a> of <a href="#Part6" id="rfc.xref.Part6.8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a Content-Location header field (see <a href="p3-payload.html#header.content-location" title="Content-Location">Section 6.7</a> of <a href="#Part3" id="rfc.xref.Part3.6"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests. … … 1520 1526 <div id="rfc.iref.m.7"></div> 1521 1527 <p id="rfc.section.6.8.p.1">The TRACE method requests a remote, application-layer loop-back of the request message. The final recipient of the request <em class="bcp14">SHOULD</em> reflect the message received back to the client as the message-body of a 200 (OK) response. The final recipient is either 1522 the origin server or the first proxy to receive a Max-Forwards value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.3" title="Max-Forwards">Section 8.5</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message-body.1528 the origin server or the first proxy to receive a Max-Forwards value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.3" title="Max-Forwards">Section 9.6</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message-body. 1523 1529 </p> 1524 1530 <p id="rfc.section.6.8.p.2">TRACE allows the client to see what is being received at the other end of the request chain and use that data for testing 1525 or diagnostic information. The value of the Via header field (<a href="p1-messaging.html#header.via" title="Via">Section 8. 9</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) is of particular interest, since it acts as a trace of the request chain. Use of the Max-Forwards header field allows the1531 or diagnostic information. The value of the Via header field (<a href="p1-messaging.html#header.via" title="Via">Section 8.8</a> of <a href="#Part1" id="rfc.xref.Part1.27"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) is of particular interest, since it acts as a trace of the request chain. Use of the Max-Forwards header field allows the 1526 1532 client to limit the length of the request chain, which is useful for testing a chain of proxies forwarding messages in an 1527 1533 infinite loop. 1528 1534 </p> 1529 <p id="rfc.section.6.8.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a Content-Type of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 9.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.2 9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and contain a message-body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable.1535 <p id="rfc.section.6.8.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a Content-Type of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 9.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and contain a message-body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable. 1530 1536 </p> 1531 1537 <div id="rfc.iref.c.1"></div> … … 1535 1541 forwarding of packets until the connection is closed. 1536 1542 </p> 1537 <p id="rfc.section.6.9.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="request-target">Section 3.1.1.2</a> of <a href="#Part1" id="rfc.xref.Part1. 30"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon.1543 <p id="rfc.section.6.9.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="request-target">Section 3.1.1.2</a> of <a href="#Part1" id="rfc.xref.Part1.29"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon. 1538 1544 For example, 1539 1545 </p> … … 1599 1605 <p id="rfc.section.7.1.1.p.1">The client <em class="bcp14">SHOULD</em> continue with its request. This interim response is used to inform the client that the initial part of the request has been 1600 1606 received and has not yet been rejected by the server. The client <em class="bcp14">SHOULD</em> continue by sending the remainder of the request or, if the request has already been completed, ignore this response. The 1601 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.3 1"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for detailed discussion of the use and handling of this status code.1607 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.30"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for detailed discussion of the use and handling of this status code. 1602 1608 </p> 1603 1609 <div id="rfc.iref.23"></div> 1604 1610 <div id="rfc.iref.s.3"></div> 1605 1611 <h3 id="rfc.section.7.1.2"><a href="#rfc.section.7.1.2">7.1.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3> 1606 <p id="rfc.section.7.1.2.p.1">The server understands and is willing to comply with the client's request, via the Upgrade message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 8. 8</a> of <a href="#Part1" id="rfc.xref.Part1.32"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined1612 <p id="rfc.section.7.1.2.p.1">The server understands and is willing to comply with the client's request, via the Upgrade message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 8.7</a> of <a href="#Part1" id="rfc.xref.Part1.31"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined 1607 1613 by the response's Upgrade header field immediately after the empty line which terminates the 101 response. 1608 1614 </p> … … 1639 1645 </p> 1640 1646 <p id="rfc.section.7.2.2.p.2">A 201 response <em class="bcp14">MAY</em> contain an ETag response header field indicating the current value of the entity-tag for the representation of the resource 1641 just created (see <a href="p4-conditional.html#header.etag" title="E Tag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.9"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>).1647 just created (see <a href="p4-conditional.html#header.etag" title="ERROR: Anchor 'header.etag' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'header.etag' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.9"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). 1642 1648 </p> 1643 1649 <div id="rfc.iref.26"></div> … … 1656 1662 <div id="rfc.iref.s.7"></div> 1657 1663 <h3 id="rfc.section.7.2.4"><a href="#rfc.section.7.2.4">7.2.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3> 1658 <p id="rfc.section.7.2.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.4</a> of <a href="#Part1" id="rfc.xref.Part1.3 3"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Note that the behaviour of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a> of <a href="#Part6" id="rfc.xref.Part6.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).1664 <p id="rfc.section.7.2.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.4</a> of <a href="#Part1" id="rfc.xref.Part1.32"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Note that the behaviour of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a> of <a href="#Part6" id="rfc.xref.Part6.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1659 1665 </p> 1660 1666 <p id="rfc.section.7.2.4.p.2">This status code is only appropriate when the response status code would have been 200 (OK) otherwise. When the status code … … 1691 1697 another input action. 1692 1698 </p> 1693 <p id="rfc.section.7.2.6.p.2">The message-body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.3 4"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.1699 <p id="rfc.section.7.2.6.p.2">The message-body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.33"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 1694 1700 </p> 1695 1701 <div id="rfc.iref.30"></div> … … 1815 1821 <h3 id="rfc.section.7.3.5"><a href="#rfc.section.7.3.5">7.3.5</a> <a id="status.304" href="#status.304">304 Not Modified</a></h3> 1816 1822 <p id="rfc.section.7.3.5.p.1">The response to the request has not been modified since the conditions indicated by the client's conditional GET request, 1817 as defined in <a href="p4-conditional.html#status.304" title=" 304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4.10"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>.1823 as defined in <a href="p4-conditional.html#status.304" title="ERROR: Anchor 'status.304' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'status.304' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.10"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>. 1818 1824 </p> 1819 1825 <div id="rfc.iref.36"></div> … … 1948 1954 <h3 id="rfc.section.7.4.13"><a href="#rfc.section.7.4.13">7.4.13</a> <a id="status.412" href="#status.412">412 Precondition Failed</a></h3> 1949 1955 <p id="rfc.section.7.4.13.p.1">The precondition given in one or more of the header fields evaluated to false when it was tested on the server, as defined 1950 in <a href="p4-conditional.html#status.412" title=" 412 Precondition Failed">Section 4.2</a> of <a href="#Part4" id="rfc.xref.Part4.11"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>.1956 in <a href="p4-conditional.html#status.412" title="ERROR: Anchor 'status.412' not found in p4-conditional.xml.">Appendix ERROR: Anchor 'status.412' in Part4 not found in source file 'p4-conditional.xml'.</a> of <a href="#Part4" id="rfc.xref.Part4.11"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>. 1951 1957 </p> 1952 1958 <div id="rfc.iref.52"></div> … … 1981 1987 <div id="rfc.iref.s.36"></div> 1982 1988 <h3 id="rfc.section.7.4.18"><a href="#rfc.section.7.4.18">7.4.18</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3> 1983 <p id="rfc.section.7.4.18.p.1">The expectation given in an Expect header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 8.2</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could1989 <p id="rfc.section.7.4.18.p.1">The expectation given in an Expect header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 9.3</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could 1984 1990 not be met by the next-hop server. 1985 1991 </p> … … 1987 1993 <div id="rfc.iref.s.37"></div> 1988 1994 <h3 id="rfc.section.7.4.19"><a href="#rfc.section.7.4.19">7.4.19</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3> 1989 <p id="rfc.section.7.4.19.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an Upgrade header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 8. 8</a> of <a href="#Part1" id="rfc.xref.Part1.35"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) specifying the required protocols.1995 <p id="rfc.section.7.4.19.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an Upgrade header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 8.7</a> of <a href="#Part1" id="rfc.xref.Part1.34"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) specifying the required protocols. 1990 1996 </p> 1991 1997 <div id="rfc.figure.u.8"></div> … … 2025 2031 </p> 2026 2032 <p id="rfc.section.7.5.4.p.2">The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the 2027 delay <em class="bcp14">MAY</em> be indicated in a Retry-After header field (<a href="#header.retry-after" id="rfc.xref.header.retry-after.2" title="Retry-After">Section 8.7</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a 500 response.2033 delay <em class="bcp14">MAY</em> be indicated in a Retry-After header field (<a href="#header.retry-after" id="rfc.xref.header.retry-after.2" title="Retry-After">Section 9.8</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a 500 response. 2028 2034 </p> 2029 2035 <div class="note" id="rfc.section.7.5.4.p.3"> … … 2047 2053 <p id="rfc.section.7.5.6.p.1">The server does not support, or refuses to support, the protocol version that was used in the request message. The server 2048 2054 is indicating that it is unable or unwilling to complete the request using the same major version as the client, as described 2049 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1.36"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, other than with this error message. The response <em class="bcp14">SHOULD</em> contain a representation describing why that version is not supported and what other protocols are supported by that server. 2050 </p> 2051 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="header.field.definitions" href="#header.field.definitions">Header Field Definitions</a></h1> 2052 <p id="rfc.section.8.p.1">This section defines the syntax and semantics of HTTP/1.1 header fields related to request and response semantics.</p> 2055 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1.35"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, other than with this error message. The response <em class="bcp14">SHOULD</em> contain a representation describing why that version is not supported and what other protocols are supported by that server. 2056 </p> 2057 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="http.date" href="#http.date">Date/Time Formats</a></h1> 2058 <p id="rfc.section.8.p.1">HTTP applications have historically allowed three different formats for date/time stamps. However, the preferred format is 2059 a fixed-length subset of that defined by <a href="#RFC1123" id="rfc.xref.RFC1123.1"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a>: 2060 </p> 2061 <div id="rfc.figure.u.9"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 2062 </pre><p id="rfc.section.8.p.3">The other formats are described here only for compatibility with obsolete implementations.</p> 2063 <div id="rfc.figure.u.10"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 2064 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format 2065 </pre><p id="rfc.section.8.p.5">HTTP/1.1 clients and servers that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0), though they <em class="bcp14">MUST</em> only generate the RFC 1123 format for representing HTTP-date values in header fields. 2066 </p> 2067 <p id="rfc.section.8.p.6">All HTTP date/time stamps <em class="bcp14">MUST</em> be represented in Greenwich Mean Time (GMT), without exception. For the purposes of HTTP, GMT is exactly equal to UTC (Coordinated 2068 Universal Time). This is indicated in the first two formats by the inclusion of "GMT" as the three-letter abbreviation for 2069 time zone, and <em class="bcp14">MUST</em> be assumed when reading the asctime format. HTTP-date is case sensitive and <em class="bcp14">MUST NOT</em> include additional whitespace beyond that specifically included as SP in the grammar. 2070 </p> 2071 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.6"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a> 2072 </pre><div id="preferred.date.format"> 2073 <p id="rfc.section.8.p.8"> Preferred format:</p> 2074 </div> 2075 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span><span id="rfc.iref.g.11"></span><span id="rfc.iref.g.12"></span><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#notation" class="smpl">SP</a> date1 <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2076 ; fixed length subset of the format defined in 2077 ; <a href="http://tools.ietf.org/html/rfc1123#section-5.2.14">Section 5.2.14</a> of <a href="#RFC1123" id="rfc.xref.RFC1123.2"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a> 2078 2079 <a href="#preferred.date.format" class="smpl">day-name</a> = %x4D.6F.6E ; "Mon", case-sensitive 2080 / %x54.75.65 ; "Tue", case-sensitive 2081 / %x57.65.64 ; "Wed", case-sensitive 2082 / %x54.68.75 ; "Thu", case-sensitive 2083 / %x46.72.69 ; "Fri", case-sensitive 2084 / %x53.61.74 ; "Sat", case-sensitive 2085 / %x53.75.6E ; "Sun", case-sensitive 2086 2087 <a href="#obsolete.date.formats" class="smpl">date1</a> = <a href="#preferred.date.format" class="smpl">day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">month</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 2088 ; e.g., 02 Jun 1982 2089 2090 <a href="#preferred.date.format" class="smpl">day</a> = 2<a href="#notation" class="smpl">DIGIT</a> 2091 <a href="#preferred.date.format" class="smpl">month</a> = %x4A.61.6E ; "Jan", case-sensitive 2092 / %x46.65.62 ; "Feb", case-sensitive 2093 / %x4D.61.72 ; "Mar", case-sensitive 2094 / %x41.70.72 ; "Apr", case-sensitive 2095 / %x4D.61.79 ; "May", case-sensitive 2096 / %x4A.75.6E ; "Jun", case-sensitive 2097 / %x4A.75.6C ; "Jul", case-sensitive 2098 / %x41.75.67 ; "Aug", case-sensitive 2099 / %x53.65.70 ; "Sep", case-sensitive 2100 / %x4F.63.74 ; "Oct", case-sensitive 2101 / %x4E.6F.76 ; "Nov", case-sensitive 2102 / %x44.65.63 ; "Dec", case-sensitive 2103 <a href="#preferred.date.format" class="smpl">year</a> = 4<a href="#notation" class="smpl">DIGIT</a> 2104 2105 <a href="#preferred.date.format" class="smpl">GMT</a> = %x47.4D.54 ; "GMT", case-sensitive 2106 2107 <a href="#preferred.date.format" class="smpl">time-of-day</a> = <a href="#preferred.date.format" class="smpl">hour</a> ":" <a href="#preferred.date.format" class="smpl">minute</a> ":" <a href="#preferred.date.format" class="smpl">second</a> 2108 ; 00:00:00 - 23:59:59 2109 2110 <a href="#preferred.date.format" class="smpl">hour</a> = 2<a href="#notation" class="smpl">DIGIT</a> 2111 <a href="#preferred.date.format" class="smpl">minute</a> = 2<a href="#notation" class="smpl">DIGIT</a> 2112 <a href="#preferred.date.format" class="smpl">second</a> = 2<a href="#notation" class="smpl">DIGIT</a> 2113 </pre><p id="rfc.section.8.p.10">The semantics of <a href="#preferred.date.format" class="smpl">day-name</a>, <a href="#preferred.date.format" class="smpl">day</a>, <a href="#preferred.date.format" class="smpl">month</a>, <a href="#preferred.date.format" class="smpl">year</a>, and <a href="#preferred.date.format" class="smpl">time-of-day</a> are the same as those defined for the RFC 5322 constructs with the corresponding name (<a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>). 2114 </p> 2115 <div id="obsolete.date.formats"> 2116 <p id="rfc.section.8.p.11"> Obsolete formats:</p> 2117 </div> 2118 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.19"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a> 2119 </pre><div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.20"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2120 <a href="#obsolete.date.formats" class="smpl">date2</a> = <a href="#preferred.date.format" class="smpl">day</a> "-" <a href="#preferred.date.format" class="smpl">month</a> "-" 2<a href="#notation" class="smpl">DIGIT</a> 2121 ; day-month-year (e.g., 02-Jun-82) 2122 2123 <a href="#obsolete.date.formats" class="smpl">day-name-l</a> = %x4D.6F.6E.64.61.79 ; "Monday", case-sensitive 2124 / %x54.75.65.73.64.61.79 ; "Tuesday", case-sensitive 2125 / %x57.65.64.6E.65.73.64.61.79 ; "Wednesday", case-sensitive 2126 / %x54.68.75.72.73.64.61.79 ; "Thursday", case-sensitive 2127 / %x46.72.69.64.61.79 ; "Friday", case-sensitive 2128 / %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 2129 / %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 2130 </pre><div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 2131 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#notation" class="smpl">SP</a> ( 2<a href="#notation" class="smpl">DIGIT</a> / ( <a href="#notation" class="smpl">SP</a> 1<a href="#notation" class="smpl">DIGIT</a> )) 2132 ; month day (e.g., Jun 2) 2133 </pre><div class="note" id="rfc.section.8.p.15"> 2134 <p> <b>Note:</b> Recipients of date values are encouraged to be robust in accepting date values that might have been sent by non-HTTP applications, 2135 as is sometimes the case when retrieving or posting messages via proxies/gateways to SMTP or NNTP. 2136 </p> 2137 </div> 2138 <div class="note" id="rfc.section.8.p.16"> 2139 <p> <b>Note:</b> HTTP requirements for the date/time stamp format apply only to their usage within the protocol stream. Clients and servers 2140 are not required to use these formats for user presentation, request logging, etc. 2141 </p> 2142 </div> 2143 <h1 id="rfc.section.9"><a href="#rfc.section.9">9.</a> <a id="header.field.definitions" href="#header.field.definitions">Header Field Definitions</a></h1> 2144 <p id="rfc.section.9.p.1">This section defines the syntax and semantics of HTTP/1.1 header fields related to request and response semantics.</p> 2053 2145 <div id="rfc.iref.a.1"></div> 2054 2146 <div id="rfc.iref.h.2"></div> 2055 <h2 id="rfc.section. 8.1"><a href="#rfc.section.8.1">8.1</a> <a id="header.allow" href="#header.allow">Allow</a></h2>2056 <p id="rfc.section. 8.1.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field2147 <h2 id="rfc.section.9.1"><a href="#rfc.section.9.1">9.1</a> <a id="header.allow" href="#header.allow">Allow</a></h2> 2148 <p id="rfc.section.9.1.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field 2057 2149 is strictly to inform the recipient of valid request methods associated with the resource. 2058 2150 </p> 2059 <div id="rfc.figure.u. 9"></div><pre class="inline"><span id="rfc.iref.g.6"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method" class="smpl">Method</a>2060 </pre><p id="rfc.section. 8.1.p.3">Example of use:</p>2061 <div id="rfc.figure.u.1 0"></div><pre class="text"> Allow: GET, HEAD, PUT2062 </pre><p id="rfc.section. 8.1.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p>2063 <p id="rfc.section. 8.1.p.6">A proxy <em class="bcp14">MUST NOT</em> modify the Allow header field — it does not need to understand all the methods specified in order to handle them according2151 <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.22"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method" class="smpl">Method</a> 2152 </pre><p id="rfc.section.9.1.p.3">Example of use:</p> 2153 <div id="rfc.figure.u.17"></div><pre class="text"> Allow: GET, HEAD, PUT 2154 </pre><p id="rfc.section.9.1.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p> 2155 <p id="rfc.section.9.1.p.6">A proxy <em class="bcp14">MUST NOT</em> modify the Allow header field — it does not need to understand all the methods specified in order to handle them according 2064 2156 to the generic message handling rules. 2065 2157 </p> 2158 <div id="rfc.iref.d.2"></div> 2159 <div id="rfc.iref.h.3"></div> 2160 <h2 id="rfc.section.9.2"><a href="#rfc.section.9.2">9.2</a> <a id="header.date" href="#header.date">Date</a></h2> 2161 <p id="rfc.section.9.2.p.1">The "Date" header field represents the date and time at which the message was originated, having the same semantics as the 2162 Origination Date Field (orig-date) defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as defined in <a href="#http.date" title="Date/Time Formats">Section 8</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 2163 </p> 2164 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.23"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a> 2165 </pre><p id="rfc.section.9.2.p.3">An example is</p> 2166 <div id="rfc.figure.u.19"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 2167 </pre><p id="rfc.section.9.2.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 2168 </p> 2169 <ol> 2170 <li>If the response status code is 100 (Continue) or 101 (Switching Protocols), the response <em class="bcp14">MAY</em> include a Date header field, at the server's option. 2171 </li> 2172 <li>If the response status code conveys a server error, e.g., 500 (Internal Server Error) or 503 (Service Unavailable), and it 2173 is inconvenient or impossible to generate a valid Date. 2174 </li> 2175 <li>If the server does not have a clock that can provide a reasonable approximation of the current time, its responses <em class="bcp14">MUST NOT</em> include a Date header field. 2176 </li> 2177 </ol> 2178 <p id="rfc.section.9.2.p.6">A received message that does not have a Date header field <em class="bcp14">MUST</em> be assigned one by the recipient if the message will be cached by that recipient. 2179 </p> 2180 <p id="rfc.section.9.2.p.7">Clients can use the Date header field as well; in order to keep request messages small, they are advised not to include it 2181 when it doesn't convey any useful information (as it is usually the case for requests that do not contain a payload). 2182 </p> 2183 <p id="rfc.section.9.2.p.8">The HTTP-date sent in a Date header field <em class="bcp14">SHOULD NOT</em> represent a date and time subsequent to the generation of the message. It <em class="bcp14">SHOULD</em> represent the best available approximation of the date and time of message generation, unless the implementation has no means 2184 of generating a reasonably accurate date and time. In theory, the date ought to represent the moment just before the payload 2185 is generated. In practice, the date can be generated at any time during the message origination without affecting its semantic 2186 value. 2187 </p> 2066 2188 <div id="rfc.iref.e.1"></div> 2067 <div id="rfc.iref.h. 3"></div>2068 <h2 id="rfc.section. 8.2"><a href="#rfc.section.8.2">8.2</a> <a id="header.expect" href="#header.expect">Expect</a></h2>2069 <p id="rfc.section. 8.2.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p>2070 <div id="rfc.figure.u. 11"></div><pre class="inline"><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a>2189 <div id="rfc.iref.h.4"></div> 2190 <h2 id="rfc.section.9.3"><a href="#rfc.section.9.3">9.3</a> <a id="header.expect" href="#header.expect">Expect</a></h2> 2191 <p id="rfc.section.9.3.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p> 2192 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a> 2071 2193 2072 2194 <a href="#header.expect" class="smpl">expectation</a> = "100-continue" / <a href="#header.expect" class="smpl">expectation-extension</a> … … 2074 2196 *<a href="#header.expect" class="smpl">expect-params</a> ] 2075 2197 <a href="#header.expect" class="smpl">expect-params</a> = ";" <a href="#core.rules" class="smpl">token</a> [ "=" ( <a href="#core.rules" class="smpl">token</a> / <a href="#core.rules" class="smpl">quoted-string</a> ) ] 2076 </pre><p id="rfc.section. 8.2.p.3">A server that does not understand or is unable to comply with any of the expectation values in the Expect field of a request <em class="bcp14">MUST</em> respond with appropriate error status code. The server <em class="bcp14">MUST</em> respond with a 417 (Expectation Failed) status code if any of the expectations cannot be met or, if there are other problems2198 </pre><p id="rfc.section.9.3.p.3">A server that does not understand or is unable to comply with any of the expectation values in the Expect field of a request <em class="bcp14">MUST</em> respond with appropriate error status code. The server <em class="bcp14">MUST</em> respond with a 417 (Expectation Failed) status code if any of the expectations cannot be met or, if there are other problems 2077 2199 with the request, some other 4xx status code. 2078 2200 </p> 2079 <p id="rfc.section. 8.2.p.4">This header field is defined with extensible syntax to allow for future extensions. If a server receives a request containing2201 <p id="rfc.section.9.3.p.4">This header field is defined with extensible syntax to allow for future extensions. If a server receives a request containing 2080 2202 an Expect field that includes an expectation-extension that it does not support, it <em class="bcp14">MUST</em> respond with a 417 (Expectation Failed) status code. 2081 2203 </p> 2082 <p id="rfc.section. 8.2.p.5">Comparison of expectation values is case-insensitive for unquoted tokens (including the 100-continue token), and is case-sensitive2204 <p id="rfc.section.9.3.p.5">Comparison of expectation values is case-insensitive for unquoted tokens (including the 100-continue token), and is case-sensitive 2083 2205 for quoted-string expectation-extensions. 2084 2206 </p> 2085 <p id="rfc.section. 8.2.p.6">The Expect mechanism is hop-by-hop: that is, an HTTP/1.1 proxy <em class="bcp14">MUST</em> return a 417 (Expectation Failed) status code if it receives a request with an expectation that it cannot meet. However, the2207 <p id="rfc.section.9.3.p.6">The Expect mechanism is hop-by-hop: that is, an HTTP/1.1 proxy <em class="bcp14">MUST</em> return a 417 (Expectation Failed) status code if it receives a request with an expectation that it cannot meet. However, the 2086 2208 Expect header field itself is end-to-end; it <em class="bcp14">MUST</em> be forwarded if the request is forwarded. 2087 2209 </p> 2088 <p id="rfc.section. 8.2.p.7">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p>2089 <p id="rfc.section. 8.2.p.8">See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.37"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for the use of the 100 (Continue) status code.2210 <p id="rfc.section.9.3.p.7">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p> 2211 <p id="rfc.section.9.3.p.8">See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.36"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for the use of the 100 (Continue) status code. 2090 2212 </p> 2091 2213 <div id="rfc.iref.f.1"></div> 2092 <div id="rfc.iref.h. 4"></div>2093 <h2 id="rfc.section. 8.3"><a href="#rfc.section.8.3">8.3</a> <a id="header.from" href="#header.from">From</a></h2>2094 <p id="rfc.section. 8.3.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>:2095 </p> 2096 <div id="rfc.figure.u. 12"></div><pre class="inline"><span id="rfc.iref.g.11"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a>2214 <div id="rfc.iref.h.5"></div> 2215 <h2 id="rfc.section.9.4"><a href="#rfc.section.9.4">9.4</a> <a id="header.from" href="#header.from">From</a></h2> 2216 <p id="rfc.section.9.4.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>: 2217 </p> 2218 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.28"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a> 2097 2219 2098 <a href="#header.from" class="smpl">mailbox</a> = <mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322. 2"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>>2099 </pre><p id="rfc.section. 8.3.p.3">An example is:</p>2100 <div id="rfc.figure.u. 13"></div><pre class="text"> From: webmaster@example.org2101 </pre><p id="rfc.section. 8.3.p.5">This header field <em class="bcp14">MAY</em> be used for logging purposes and as a means for identifying the source of invalid or unwanted requests. It <em class="bcp14">SHOULD NOT</em> be used as an insecure form of access protection. The interpretation of this field is that the request is being performed2220 <a href="#header.from" class="smpl">mailbox</a> = <mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>> 2221 </pre><p id="rfc.section.9.4.p.3">An example is:</p> 2222 <div id="rfc.figure.u.22"></div><pre class="text"> From: webmaster@example.org 2223 </pre><p id="rfc.section.9.4.p.5">This header field <em class="bcp14">MAY</em> be used for logging purposes and as a means for identifying the source of invalid or unwanted requests. It <em class="bcp14">SHOULD NOT</em> be used as an insecure form of access protection. The interpretation of this field is that the request is being performed 2102 2224 on behalf of the person given, who accepts responsibility for the method performed. In particular, robot agents <em class="bcp14">SHOULD</em> include this header field so that the person responsible for running the robot can be contacted if problems occur on the receiving 2103 2225 end. 2104 2226 </p> 2105 <p id="rfc.section. 8.3.p.6">The Internet e-mail address in this field <em class="bcp14">MAY</em> be separate from the Internet host which issued the request. For example, when a request is passed through a proxy the original2227 <p id="rfc.section.9.4.p.6">The Internet e-mail address in this field <em class="bcp14">MAY</em> be separate from the Internet host which issued the request. For example, when a request is passed through a proxy the original 2106 2228 issuer's address <em class="bcp14">SHOULD</em> be used. 2107 2229 </p> 2108 <p id="rfc.section. 8.3.p.7">The client <em class="bcp14">SHOULD NOT</em> send the From header field without the user's approval, as it might conflict with the user's privacy interests or their site's2230 <p id="rfc.section.9.4.p.7">The client <em class="bcp14">SHOULD NOT</em> send the From header field without the user's approval, as it might conflict with the user's privacy interests or their site's 2109 2231 security policy. It is strongly recommended that the user be able to disable, enable, and modify the value of this field at 2110 2232 any time prior to a request. 2111 2233 </p> 2112 2234 <div id="rfc.iref.l.1"></div> 2113 <div id="rfc.iref.h. 5"></div>2114 <h2 id="rfc.section. 8.4"><a href="#rfc.section.8.4">8.4</a> <a id="header.location" href="#header.location">Location</a></h2>2115 <p id="rfc.section. 8.4.p.1">The "Location" header field is used to identify a newly created resource, or to redirect the recipient to a different location2235 <div id="rfc.iref.h.6"></div> 2236 <h2 id="rfc.section.9.5"><a href="#rfc.section.9.5">9.5</a> <a id="header.location" href="#header.location">Location</a></h2> 2237 <p id="rfc.section.9.5.p.1">The "Location" header field is used to identify a newly created resource, or to redirect the recipient to a different location 2116 2238 for completion of the request. 2117 2239 </p> 2118 <p id="rfc.section. 8.4.p.2">For 201 (Created) responses, the Location is the URI of the new resource which was created by the request. For 3xx responses,2240 <p id="rfc.section.9.5.p.2">For 201 (Created) responses, the Location is the URI of the new resource which was created by the request. For 3xx responses, 2119 2241 the location <em class="bcp14">SHOULD</em> indicate the server's preferred URI for automatic redirection to the resource. 2120 2242 </p> 2121 <p id="rfc.section. 8.4.p.3">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.1"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.2">Section 4.2</a>), the final value is computed by resolving it against the effective request URI (<a href="#RFC3986" id="rfc.xref.RFC3986.2"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-5">Section 5</a>).2122 </p> 2123 <div id="rfc.figure.u. 14"></div><pre class="inline"><span id="rfc.iref.g.12"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a>2124 </pre><div id="rfc.figure.u. 15"></div>2243 <p id="rfc.section.9.5.p.3">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.1"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.2">Section 4.2</a>), the final value is computed by resolving it against the effective request URI (<a href="#RFC3986" id="rfc.xref.RFC3986.2"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-5">Section 5</a>). 2244 </p> 2245 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.29"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a> 2246 </pre><div id="rfc.figure.u.24"></div> 2125 2247 <p>Examples are:</p> <pre class="text"> Location: http://www.example.org/pub/WWW/People.html#tim 2126 </pre><div id="rfc.figure.u. 16"></div><pre class="text"> Location: /index.html2127 </pre><p id="rfc.section. 8.4.p.7">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears2248 </pre><div id="rfc.figure.u.25"></div><pre class="text"> Location: /index.html 2249 </pre><p id="rfc.section.9.5.p.7">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears 2128 2250 in a 201 Created response, where the Location header field specifies the URI for the entire created resource. 2129 2251 </p> 2130 <div class="note" id="rfc.section. 8.4.p.8">2252 <div class="note" id="rfc.section.9.5.p.8"> 2131 2253 <p> <b>Note:</b> This specification does not define precedence rules for the case where the original URI, as navigated to by the user agent, 2132 2254 and the Location header field value both contain fragment identifiers. Thus be aware that including fragment identifiers might … … 2134 2256 </p> 2135 2257 </div> 2136 <div class="note" id="rfc.section. 8.4.p.9">2258 <div class="note" id="rfc.section.9.5.p.9"> 2137 2259 <p> <b>Note:</b> The Content-Location header field (<a href="p3-payload.html#header.content-location" title="Content-Location">Section 6.7</a> of <a href="#Part3" id="rfc.xref.Part3.10"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) differs from Location in that the Content-Location identifies the most specific resource corresponding to the enclosed representation. 2138 2260 It is therefore possible for a response to contain header fields for both Location and Content-Location. … … 2140 2262 </div> 2141 2263 <div id="rfc.iref.m.9"></div> 2142 <div id="rfc.iref.h. 6"></div>2143 <h2 id="rfc.section. 8.5"><a href="#rfc.section.8.5">8.5</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2>2144 <p id="rfc.section. 8.5.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 6.8</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 6.2</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting2264 <div id="rfc.iref.h.7"></div> 2265 <h2 id="rfc.section.9.6"><a href="#rfc.section.9.6">9.6</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2> 2266 <p id="rfc.section.9.6.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 6.8</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 6.2</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting 2145 2267 to trace a request which appears to be failing or looping in mid-chain. 2146 2268 </p> 2147 <div id="rfc.figure.u. 17"></div><pre class="inline"><span id="rfc.iref.g.13"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a>2148 </pre><p id="rfc.section. 8.5.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p>2149 <p id="rfc.section. 8.5.p.4">Each recipient of a TRACE or OPTIONS request containing a Max-Forwards header field <em class="bcp14">MUST</em> check and update its value prior to forwarding the request. If the received value is zero (0), the recipient <em class="bcp14">MUST NOT</em> forward the request; instead, it <em class="bcp14">MUST</em> respond as the final recipient. If the received Max-Forwards value is greater than zero, then the forwarded message <em class="bcp14">MUST</em> contain an updated Max-Forwards field with a value decremented by one (1).2150 </p> 2151 <p id="rfc.section. 8.5.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods.2269 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2270 </pre><p id="rfc.section.9.6.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p> 2271 <p id="rfc.section.9.6.p.4">Each recipient of a TRACE or OPTIONS request containing a Max-Forwards header field <em class="bcp14">MUST</em> check and update its value prior to forwarding the request. If the received value is zero (0), the recipient <em class="bcp14">MUST NOT</em> forward the request; instead, it <em class="bcp14">MUST</em> respond as the final recipient. If the received Max-Forwards value is greater than zero, then the forwarded message <em class="bcp14">MUST</em> contain an updated Max-Forwards field with a value decremented by one (1). 2272 </p> 2273 <p id="rfc.section.9.6.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods. 2152 2274 </p> 2153 2275 <div id="rfc.iref.r.1"></div> 2154 <div id="rfc.iref.h. 7"></div>2155 <h2 id="rfc.section. 8.6"><a href="#rfc.section.8.6">8.6</a> <a id="header.referer" href="#header.referer">Referer</a></h2>2156 <p id="rfc.section. 8.6.p.1">The "Referer" [sic] header field allows the client to specify the URI of the resource from which the effective request URI2276 <div id="rfc.iref.h.8"></div> 2277 <h2 id="rfc.section.9.7"><a href="#rfc.section.9.7">9.7</a> <a id="header.referer" href="#header.referer">Referer</a></h2> 2278 <p id="rfc.section.9.7.p.1">The "Referer" [sic] header field allows the client to specify the URI of the resource from which the effective request URI 2157 2279 was obtained (the "referrer", although the header field is misspelled.). 2158 2280 </p> 2159 <p id="rfc.section. 8.6.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching,2281 <p id="rfc.section.9.7.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching, 2160 2282 etc. It also allows obsolete or mistyped links to be traced for maintenance. Some servers use Referer as a means of controlling 2161 2283 where they allow links from (so-called "deep linking"), but legitimate requests do not always contain a Referer header field. 2162 2284 </p> 2163 <p id="rfc.section. 8.6.p.3">If the effective request URI was obtained from a source that does not have its own URI (e.g., input from the user keyboard),2285 <p id="rfc.section.9.7.p.3">If the effective request URI was obtained from a source that does not have its own URI (e.g., input from the user keyboard), 2164 2286 the Referer field <em class="bcp14">MUST</em> either be sent with the value "about:blank", or not be sent at all. Note that this requirement does not apply to sources with 2165 2287 non-HTTP URIs (e.g., FTP). 2166 2288 </p> 2167 <div id="rfc.figure.u. 18"></div><pre class="inline"><span id="rfc.iref.g.14"></span> <a href="#header.referer" class="smpl">Referer</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a>2168 </pre><p id="rfc.section. 8.6.p.5">Example:</p>2169 <div id="rfc.figure.u. 19"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html2170 </pre><p id="rfc.section. 8.6.p.7">If the field value is a relative URI, it <em class="bcp14">SHOULD</em> be interpreted relative to the effective request URI. The URI <em class="bcp14">MUST NOT</em> include a fragment. See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 10.2</a> for security considerations.2289 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.31"></span> <a href="#header.referer" class="smpl">Referer</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a> 2290 </pre><p id="rfc.section.9.7.p.5">Example:</p> 2291 <div id="rfc.figure.u.28"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html 2292 </pre><p id="rfc.section.9.7.p.7">If the field value is a relative URI, it <em class="bcp14">SHOULD</em> be interpreted relative to the effective request URI. The URI <em class="bcp14">MUST NOT</em> include a fragment. See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 11.2</a> for security considerations. 2171 2293 </p> 2172 2294 <div id="rfc.iref.r.2"></div> 2173 <div id="rfc.iref.h. 8"></div>2174 <h2 id="rfc.section. 8.7"><a href="#rfc.section.8.7">8.7</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h2>2175 <p id="rfc.section. 8.7.p.1">The header "Retry-After" field can be used with a 503 (Service Unavailable) response to indicate how long the service is expected2295 <div id="rfc.iref.h.9"></div> 2296 <h2 id="rfc.section.9.8"><a href="#rfc.section.9.8">9.8</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h2> 2297 <p id="rfc.section.9.8.p.1">The header "Retry-After" field can be used with a 503 (Service Unavailable) response to indicate how long the service is expected 2176 2298 to be unavailable to the requesting client. This field <em class="bcp14">MAY</em> also be used with any 3xx (Redirection) response to indicate the minimum time the user-agent is asked wait before issuing 2177 2299 the redirected request. 2178 2300 </p> 2179 <p id="rfc.section. 8.7.p.2">The value of this field can be either an HTTP-date or an integer number of seconds (in decimal) after the time of the response.</p>2180 <div id="rfc.figure.u.2 0"></div><pre class="inline"><span id="rfc.iref.g.15"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#abnf.dependencies" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>2301 <p id="rfc.section.9.8.p.2">The value of this field can be either an HTTP-date or an integer number of seconds (in decimal) after the time of the response.</p> 2302 <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.32"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> 2181 2303 </pre><div id="rule.delta-seconds"> 2182 <p id="rfc.section. 8.7.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p>2304 <p id="rfc.section.9.8.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p> 2183 2305 </div> 2184 <div id="rfc.figure.u. 21"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#notation" class="smpl">DIGIT</a>2185 </pre><p id="rfc.section. 8.7.p.6">Two examples of its use are</p>2186 <div id="rfc.figure.u. 22"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT2306 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.33"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2307 </pre><p id="rfc.section.9.8.p.6">Two examples of its use are</p> 2308 <div id="rfc.figure.u.31"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT 2187 2309 Retry-After: 120 2188 </pre><p id="rfc.section. 8.7.p.8">In the latter example, the delay is 2 minutes.</p>2310 </pre><p id="rfc.section.9.8.p.8">In the latter example, the delay is 2 minutes.</p> 2189 2311 <div id="rfc.iref.s.44"></div> 2190 <div id="rfc.iref.h. 9"></div>2191 <h2 id="rfc.section. 8.8"><a href="#rfc.section.8.8">8.8</a> <a id="header.server" href="#header.server">Server</a></h2>2192 <p id="rfc.section. 8.8.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p>2193 <p id="rfc.section. 8.8.p.2">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.38"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.39"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for2312 <div id="rfc.iref.h.10"></div> 2313 <h2 id="rfc.section.9.9"><a href="#rfc.section.9.9">9.9</a> <a id="header.server" href="#header.server">Server</a></h2> 2314 <p id="rfc.section.9.9.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p> 2315 <p id="rfc.section.9.9.p.2">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 5.2</a> of <a href="#Part1" id="rfc.xref.Part1.37"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.38"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for 2194 2316 identifying the application. 2195 2317 </p> 2196 <div id="rfc.figure.u. 23"></div><pre class="inline"><span id="rfc.iref.g.17"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )2197 </pre><p id="rfc.section. 8.8.p.4">Example:</p>2198 <div id="rfc.figure.u. 24"></div><pre class="text"> Server: CERN/3.0 libwww/2.172199 </pre><p id="rfc.section. 8.8.p.6">If the response is being forwarded through a proxy, the proxy application <em class="bcp14">MUST NOT</em> modify the Server header field. Instead, it <em class="bcp14">MUST</em> include a Via field (as described in <a href="p1-messaging.html#header.via" title="Via">Section 8.9</a> of <a href="#Part1" id="rfc.xref.Part1.40"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).2200 </p> 2201 <div class="note" id="rfc.section. 8.8.p.7">2318 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.34"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2319 </pre><p id="rfc.section.9.9.p.4">Example:</p> 2320 <div id="rfc.figure.u.33"></div><pre class="text"> Server: CERN/3.0 libwww/2.17 2321 </pre><p id="rfc.section.9.9.p.6">If the response is being forwarded through a proxy, the proxy application <em class="bcp14">MUST NOT</em> modify the Server header field. Instead, it <em class="bcp14">MUST</em> include a Via field (as described in <a href="p1-messaging.html#header.via" title="Via">Section 8.8</a> of <a href="#Part1" id="rfc.xref.Part1.39"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 2322 </p> 2323 <div class="note" id="rfc.section.9.9.p.7"> 2202 2324 <p> <b>Note:</b> Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 2203 2325 against software that is known to contain security holes. Server implementors are encouraged to make this field a configurable … … 2206 2328 </div> 2207 2329 <div id="rfc.iref.u.1"></div> 2208 <div id="rfc.iref.h.1 0"></div>2209 <h2 id="rfc.section. 8.9"><a href="#rfc.section.8.9">8.9</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h2>2210 <p id="rfc.section. 8.9.p.1">The "User-Agent" header field contains information about the user agent originating the request. User agents <em class="bcp14">SHOULD</em> include this field with requests.2211 </p> 2212 <p id="rfc.section. 8.9.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular2330 <div id="rfc.iref.h.11"></div> 2331 <h2 id="rfc.section.9.10"><a href="#rfc.section.9.10">9.10</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h2> 2332 <p id="rfc.section.9.10.p.1">The "User-Agent" header field contains information about the user agent originating the request. User agents <em class="bcp14">SHOULD</em> include this field with requests. 2333 </p> 2334 <p id="rfc.section.9.10.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular 2213 2335 user agent limitations. 2214 2336 </p> 2215 <p id="rfc.section. 8.9.p.3">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.41"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.42"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance2337 <p id="rfc.section.9.10.p.3">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 5.2</a> of <a href="#Part1" id="rfc.xref.Part1.40"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.41"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance 2216 2338 for identifying the application. 2217 2339 </p> 2218 <p id="rfc.section. 8.9.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly2340 <p id="rfc.section.9.10.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly 2219 2341 fine-grained detail, and to limit (or even prohibit) the addition of subproducts by third parties. Overly long and detailed 2220 2342 User-Agent field values make requests larger and can also be used to identify ("fingerprint") the user against their wishes. 2221 2343 </p> 2222 <p id="rfc.section. 8.9.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility2344 <p id="rfc.section.9.10.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility 2223 2345 with them, as this circumvents the purpose of the field. Finally, they are encouraged not to use comments to identify products; 2224 2346 doing so makes the field value more difficult to parse. 2225 2347 </p> 2226 <div id="rfc.figure.u. 25"></div><pre class="inline"><span id="rfc.iref.g.18"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )2227 </pre><p id="rfc.section. 8.9.p.7">Example:</p>2228 <div id="rfc.figure.u. 26"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b32229 </pre><h1 id="rfc.section. 9"><a href="#rfc.section.9">9.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1>2230 <h2 id="rfc.section. 9.1"><a href="#rfc.section.9.1">9.1</a> <a id="method.registration" href="#method.registration">Method Registry</a></h2>2231 <p id="rfc.section. 9.1.p.1">The registration procedure for HTTP request methods is defined by <a href="#method.registry" title="Method Registry">Section 2.2</a> of this document.2232 </p> 2233 <p id="rfc.section. 9.1.p.2">The HTTP Method Registry shall be created at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>> and be populated with the registrations below:2348 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.35"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2349 </pre><p id="rfc.section.9.10.p.7">Example:</p> 2350 <div id="rfc.figure.u.35"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2351 </pre><h1 id="rfc.section.10"><a href="#rfc.section.10">10.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 2352 <h2 id="rfc.section.10.1"><a href="#rfc.section.10.1">10.1</a> <a id="method.registration" href="#method.registration">Method Registry</a></h2> 2353 <p id="rfc.section.10.1.p.1">The registration procedure for HTTP request methods is defined by <a href="#method.registry" title="Method Registry">Section 2.2</a> of this document. 2354 </p> 2355 <p id="rfc.section.10.1.p.2">The HTTP Method Registry shall be created at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>> and be populated with the registrations below: 2234 2356 </p> 2235 2357 <div id="rfc.table.1"> … … 2295 2417 </table> 2296 2418 </div> 2297 <h2 id="rfc.section. 9.2"><a href="#rfc.section.9.2">9.2</a> <a id="status.code.registration" href="#status.code.registration">Status Code Registry</a></h2>2298 <p id="rfc.section. 9.2.p.1">The registration procedure for HTTP Status Codes — previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.1"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a> — is now defined by <a href="#status.code.registry" title="Status Code Registry">Section 4.2</a> of this document.2299 </p> 2300 <p id="rfc.section. 9.2.p.2">The HTTP Status Code Registry located at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>> shall be updated with the registrations below:2419 <h2 id="rfc.section.10.2"><a href="#rfc.section.10.2">10.2</a> <a id="status.code.registration" href="#status.code.registration">Status Code Registry</a></h2> 2420 <p id="rfc.section.10.2.p.1">The registration procedure for HTTP Status Codes — previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.1"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a> — is now defined by <a href="#status.code.registry" title="Status Code Registry">Section 4.2</a> of this document. 2421 </p> 2422 <p id="rfc.section.10.2.p.2">The HTTP Status Code Registry located at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>> shall be updated with the registrations below: 2301 2423 </p> 2302 2424 <div id="rfc.table.2"> … … 2536 2658 </table> 2537 2659 </div> 2538 <h2 id="rfc.section. 9.3"><a href="#rfc.section.9.3">9.3</a> <a id="header.field.registration" href="#header.field.registration">Header Field Registration</a></h2>2539 <p id="rfc.section. 9.3.p.1">The Message Header Field Registry located at <<a href="http://www.iana.org/assignments/message-headers/message-header-index.html">http://www.iana.org/assignments/message-headers/message-header-index.html</a>> shall be updated with the permanent registrations below (see <a href="#RFC3864" id="rfc.xref.RFC3864.3"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>):2660 <h2 id="rfc.section.10.3"><a href="#rfc.section.10.3">10.3</a> <a id="header.field.registration" href="#header.field.registration">Header Field Registration</a></h2> 2661 <p id="rfc.section.10.3.p.1">The Message Header Field Registry located at <<a href="http://www.iana.org/assignments/message-headers/message-header-index.html">http://www.iana.org/assignments/message-headers/message-header-index.html</a>> shall be updated with the permanent registrations below (see <a href="#RFC3864" id="rfc.xref.RFC3864.3"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>): 2540 2662 </p> 2541 2663 <div id="rfc.table.3"> … … 2555 2677 <td class="left">http</td> 2556 2678 <td class="left">standard</td> 2557 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 8.1</a> 2679 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 9.1</a> 2680 </td> 2681 </tr> 2682 <tr> 2683 <td class="left">Date</td> 2684 <td class="left">http</td> 2685 <td class="left">standard</td> 2686 <td class="left"> <a href="#header.date" id="rfc.xref.header.date.2" title="Date">Section 9.2</a> 2558 2687 </td> 2559 2688 </tr> … … 2562 2691 <td class="left">http</td> 2563 2692 <td class="left">standard</td> 2564 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 8.2</a>2693 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 9.3</a> 2565 2694 </td> 2566 2695 </tr> … … 2569 2698 <td class="left">http</td> 2570 2699 <td class="left">standard</td> 2571 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 8.3</a>2700 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 9.4</a> 2572 2701 </td> 2573 2702 </tr> … … 2576 2705 <td class="left">http</td> 2577 2706 <td class="left">standard</td> 2578 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 8.4</a>2707 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 9.5</a> 2579 2708 </td> 2580 2709 </tr> … … 2583 2712 <td class="left">http</td> 2584 2713 <td class="left">standard</td> 2585 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 8.5</a>2714 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 9.6</a> 2586 2715 </td> 2587 2716 </tr> … … 2590 2719 <td class="left">http</td> 2591 2720 <td class="left">standard</td> 2592 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 8.6</a>2721 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 9.7</a> 2593 2722 </td> 2594 2723 </tr> … … 2597 2726 <td class="left">http</td> 2598 2727 <td class="left">standard</td> 2599 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 8.7</a>2728 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 9.8</a> 2600 2729 </td> 2601 2730 </tr> … … 2604 2733 <td class="left">http</td> 2605 2734 <td class="left">standard</td> 2606 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 8.8</a>2735 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 9.9</a> 2607 2736 </td> 2608 2737 </tr> … … 2611 2740 <td class="left">http</td> 2612 2741 <td class="left">standard</td> 2613 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent.2" title="User-Agent">Section 8.9</a>2742 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent.2" title="User-Agent">Section 9.10</a> 2614 2743 </td> 2615 2744 </tr> … … 2617 2746 </table> 2618 2747 </div> 2619 <p id="rfc.section. 9.3.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p>2620 <h1 id="rfc.section.1 0"><a href="#rfc.section.10">10.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1>2621 <p id="rfc.section.1 0.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.12748 <p id="rfc.section.10.3.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p> 2749 <h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 2750 <p id="rfc.section.11.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.1 2622 2751 as described by this document. The discussion does not include definitive solutions to the problems revealed, though it does 2623 2752 make some suggestions for reducing security risks. 2624 2753 </p> 2625 <h2 id="rfc.section.1 0.1"><a href="#rfc.section.10.1">10.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2>2626 <p id="rfc.section.1 0.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any2754 <h2 id="rfc.section.11.1"><a href="#rfc.section.11.1">11.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2> 2755 <p id="rfc.section.11.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any 2627 2756 a priori method of determining the sensitivity of any particular piece of information within the context of any given request. 2628 2757 Therefore, applications <em class="bcp14">SHOULD</em> supply as much control over this information as possible to the provider of that information. Four header fields are worth 2629 2758 special mention in this context: Server, Via, Referer and From. 2630 2759 </p> 2631 <p id="rfc.section.1 0.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks2760 <p id="rfc.section.11.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 2632 2761 against software that is known to contain security holes. Implementors <em class="bcp14">SHOULD</em> make the Server header field a configurable option. 2633 2762 </p> 2634 <p id="rfc.section.1 0.1.p.3">Proxies which serve as a portal through a network firewall <em class="bcp14">SHOULD</em> take special precautions regarding the transfer of header information that identifies the hosts behind the firewall. In particular,2763 <p id="rfc.section.11.1.p.3">Proxies which serve as a portal through a network firewall <em class="bcp14">SHOULD</em> take special precautions regarding the transfer of header information that identifies the hosts behind the firewall. In particular, 2635 2764 they <em class="bcp14">SHOULD</em> remove, or replace with sanitized versions, any Via fields generated behind the firewall. 2636 2765 </p> 2637 <p id="rfc.section.1 0.1.p.4">The Referer header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its2766 <p id="rfc.section.11.1.p.4">The Referer header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its 2638 2767 power can be abused if user details are not separated from the information contained in the Referer. Even when the personal 2639 2768 information has been removed, the Referer header field might indicate a private document's URI whose publication would be 2640 2769 inappropriate. 2641 2770 </p> 2642 <p id="rfc.section.1 0.1.p.5">The information sent in the From field might conflict with the user's privacy interests or their site's security policy, and2771 <p id="rfc.section.11.1.p.5">The information sent in the From field might conflict with the user's privacy interests or their site's security policy, and 2643 2772 hence it <em class="bcp14">SHOULD NOT</em> be transmitted without the user being able to disable, enable, and modify the contents of the field. The user <em class="bcp14">MUST</em> be able to set the contents of this field within a user preference or application defaults configuration. 2644 2773 </p> 2645 <p id="rfc.section.1 0.1.p.6">We suggest, though do not require, that a convenient toggle interface be provided for the user to enable or disable the sending2774 <p id="rfc.section.11.1.p.6">We suggest, though do not require, that a convenient toggle interface be provided for the user to enable or disable the sending 2646 2775 of From and Referer information. 2647 2776 </p> 2648 <p id="rfc.section.1 0.1.p.7">The User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 8.9</a>) or Server (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 8.8</a>) header fields can sometimes be used to determine that a specific client or server have a particular security hole which2777 <p id="rfc.section.11.1.p.7">The User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 9.10</a>) or Server (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 9.9</a>) header fields can sometimes be used to determine that a specific client or server have a particular security hole which 2649 2778 might be exploited. Unfortunately, this same information is often used for other valuable purposes for which HTTP currently 2650 2779 has no better mechanism. 2651 2780 </p> 2652 <p id="rfc.section.1 0.1.p.8">Furthermore, the User-Agent header field may contain enough entropy to be used, possibly in conjunction with other material,2781 <p id="rfc.section.11.1.p.8">Furthermore, the User-Agent header field may contain enough entropy to be used, possibly in conjunction with other material, 2653 2782 to uniquely identify the user. 2654 2783 </p> 2655 <p id="rfc.section.1 0.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 6.8</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used2784 <p id="rfc.section.11.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 6.8</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used 2656 2785 to collect data from the client. 2657 2786 </p> 2658 <h2 id="rfc.section.1 0.2"><a href="#rfc.section.10.2">10.2</a> <a id="encoding.sensitive.information.in.uris" href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></h2>2659 <p id="rfc.section.1 0.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly2787 <h2 id="rfc.section.11.2"><a href="#rfc.section.11.2">11.2</a> <a id="encoding.sensitive.information.in.uris" href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></h2> 2788 <p id="rfc.section.11.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly 2660 2789 recommended that the user be able to select whether or not the Referer field is sent. For example, a browser client could 2661 2790 have a toggle switch for browsing openly/anonymously, which would respectively enable/disable the sending of Referer and From 2662 2791 information. 2663 2792 </p> 2664 <p id="rfc.section.1 0.2.p.2">Clients <em class="bcp14">SHOULD NOT</em> include a Referer header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol.2665 </p> 2666 <p id="rfc.section.1 0.2.p.3">Authors of services <em class="bcp14">SHOULD NOT</em> use GET-based forms for the submission of sensitive data because that data will be placed in the request-target. Many existing2793 <p id="rfc.section.11.2.p.2">Clients <em class="bcp14">SHOULD NOT</em> include a Referer header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol. 2794 </p> 2795 <p id="rfc.section.11.2.p.3">Authors of services <em class="bcp14">SHOULD NOT</em> use GET-based forms for the submission of sensitive data because that data will be placed in the request-target. Many existing 2667 2796 servers, proxies, and user agents log or display the request-target in places where it might be visible to third parties. 2668 2797 Such services can use POST-based form submission instead. 2669 2798 </p> 2670 <h2 id="rfc.section.1 0.3"><a href="#rfc.section.10.3">10.3</a> <a id="location.spoofing" href="#location.spoofing">Location Headers and Spoofing</a></h2>2671 <p id="rfc.section.1 0.3.p.1">If a single server supports multiple organizations that do not trust one another, then it <em class="bcp14">MUST</em> check the values of Location and Content-Location header fields in responses that are generated under control of said organizations2799 <h2 id="rfc.section.11.3"><a href="#rfc.section.11.3">11.3</a> <a id="location.spoofing" href="#location.spoofing">Location Headers and Spoofing</a></h2> 2800 <p id="rfc.section.11.3.p.1">If a single server supports multiple organizations that do not trust one another, then it <em class="bcp14">MUST</em> check the values of Location and Content-Location header fields in responses that are generated under control of said organizations 2672 2801 to make sure that they do not attempt to invalidate resources over which they have no authority. 2673 2802 </p> 2674 <h2 id="rfc.section.1 0.4"><a href="#rfc.section.10.4">10.4</a> Security Considerations for CONNECT2803 <h2 id="rfc.section.11.4"><a href="#rfc.section.11.4">11.4</a> Security Considerations for CONNECT 2675 2804 </h2> 2676 <p id="rfc.section.1 0.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports.2805 <p id="rfc.section.11.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports. 2677 2806 A HTTP client CONNECTing to port 25 could relay spam via SMTP, for example. As such, proxies <em class="bcp14">SHOULD</em> restrict CONNECT access to a small number of known ports. 2678 2807 </p> 2679 <h1 id="rfc.section.1 1"><a href="#rfc.section.11">11.</a> <a id="acks" href="#acks">Acknowledgments</a></h1>2680 <p id="rfc.section.1 1.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 11</a> of <a href="#Part1" id="rfc.xref.Part1.43"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.2681 </p> 2682 <h1 id="rfc.references"><a id="rfc.section.1 2" href="#rfc.section.12">12.</a> References2808 <h1 id="rfc.section.12"><a href="#rfc.section.12">12.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 2809 <p id="rfc.section.12.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 11</a> of <a href="#Part1" id="rfc.xref.Part1.42"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 2810 </p> 2811 <h1 id="rfc.references"><a id="rfc.section.13" href="#rfc.section.13">13.</a> References 2683 2812 </h1> 2684 <h2 id="rfc.references.1"><a href="#rfc.section.1 2.1" id="rfc.section.12.1">12.1</a> Normative References2813 <h2 id="rfc.references.1"><a href="#rfc.section.13.1" id="rfc.section.13.1">13.1</a> Normative References 2685 2814 </h2> 2686 2815 <table> … … 2731 2860 </tr> 2732 2861 </table> 2733 <h2 id="rfc.references.2"><a href="#rfc.section.1 2.2" id="rfc.section.12.2">12.2</a> Informative References2862 <h2 id="rfc.references.2"><a href="#rfc.section.13.2" id="rfc.section.13.2">13.2</a> Informative References 2734 2863 </h2> 2735 <table> 2864 <table> 2865 <tr> 2866 <td class="reference"><b id="RFC1123">[RFC1123]</b></td> 2867 <td class="top"><a href="mailto:Braden@ISI.EDU" title="University of Southern California (USC), Information Sciences Institute">Braden, R.</a>, “<a href="http://tools.ietf.org/html/rfc1123">Requirements for Internet Hosts - Application and Support</a>”, STD 3, RFC 1123, October 1989. 2868 </td> 2869 </tr> 2736 2870 <tr> 2737 2871 <td class="reference"><b id="RFC1945">[RFC1945]</b></td> … … 2819 2953 <p id="rfc.section.A.p.8">Define status 426 (Upgrade Required) (this was incorporated from <a href="#RFC2817" id="rfc.xref.RFC2817.4"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>). (<a href="#status.426" id="rfc.xref.status.426.3" title="426 Upgrade Required">Section 7.4.19</a>) 2820 2954 </p> 2821 <p id="rfc.section.A.p.9">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 8</a>)2955 <p id="rfc.section.A.p.9">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 9</a>) 2822 2956 </p> 2823 2957 <p id="rfc.section.A.p.10">Reclassify "Allow" as response header field, removing the option to specify it in a PUT request. Relax the server requirement 2824 on the contents of the Allow header field and remove requirement on clients to always trust the header field value. (<a href="#header.allow" id="rfc.xref.header.allow.4" title="Allow">Section 8.1</a>)2958 on the contents of the Allow header field and remove requirement on clients to always trust the header field value. (<a href="#header.allow" id="rfc.xref.header.allow.4" title="Allow">Section 9.1</a>) 2825 2959 </p> 2826 2960 <p id="rfc.section.A.p.11">Correct syntax of Location header field to allow URI references (including relative references and fragments), as referred 2827 2961 symbol "absoluteURI" wasn't what was expected, and add some clarifications as to when use of fragments would not be appropriate. 2828 (<a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 8.4</a>)2829 </p> 2830 <p id="rfc.section.A.p.12">Restrict Max-Forwards header field to OPTIONS and TRACE (previously, extension methods could have used it as well). (<a href="#header.max-forwards" id="rfc.xref.header.max-forwards.5" title="Max-Forwards">Section 8.5</a>)2831 </p> 2832 <p id="rfc.section.A.p.13">Allow Referer field value of "about:blank" as alternative to not specifying it. (<a href="#header.referer" id="rfc.xref.header.referer.3" title="Referer">Section 8.6</a>)2962 (<a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 9.5</a>) 2963 </p> 2964 <p id="rfc.section.A.p.12">Restrict Max-Forwards header field to OPTIONS and TRACE (previously, extension methods could have used it as well). (<a href="#header.max-forwards" id="rfc.xref.header.max-forwards.5" title="Max-Forwards">Section 9.6</a>) 2965 </p> 2966 <p id="rfc.section.A.p.13">Allow Referer field value of "about:blank" as alternative to not specifying it. (<a href="#header.referer" id="rfc.xref.header.referer.3" title="Referer">Section 9.7</a>) 2833 2967 </p> 2834 2968 <p id="rfc.section.A.p.14">In the description of the Server header field, the Via field was described as a SHOULD. The requirement was and is stated 2835 correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 8. 9</a> of <a href="#Part1" id="rfc.xref.Part1.44"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 8.8</a>)2969 correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 8.8</a> of <a href="#Part1" id="rfc.xref.Part1.43"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 9.9</a>) 2836 2970 </p> 2837 2971 <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 2838 <div id="rfc.figure.u.27"></div> <pre class="inline"><a href="#header.allow" class="smpl">Allow</a> = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ] 2972 <div id="rfc.figure.u.36"></div> <pre class="inline"><a href="#header.allow" class="smpl">Allow</a> = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ] 2973 2974 <a href="#header.date" class="smpl">Date</a> = HTTP-date 2839 2975 2840 2976 <a href="#header.expect" class="smpl">Expect</a> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] ) … … 2842 2978 <a href="#header.from" class="smpl">From</a> = mailbox 2843 2979 2844 <a href="#abnf.dependencies" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part1], Section 5.1> 2980 <a href="#preferred.date.format" class="smpl">GMT</a> = %x47.4D.54 ; GMT 2981 2982 <a href="#http.date" class="smpl">HTTP-date</a> = rfc1123-date / obs-date 2845 2983 2846 2984 <a href="#header.location" class="smpl">Location</a> = URI-reference … … 2863 3001 2864 3002 <a href="#abnf.dependencies" class="smpl">absolute-URI</a> = <absolute-URI, defined in [Part1], Section 2.7> 3003 <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = day-name SP date3 SP time-of-day SP year 2865 3004 2866 3005 <a href="#abnf.dependencies" class="smpl">comment</a> = <comment, defined in [Part1], Section 3.2> 2867 3006 3007 <a href="#obsolete.date.formats" class="smpl">date1</a> = day SP month SP year 3008 <a href="#obsolete.date.formats" class="smpl">date2</a> = day "-" month "-" 2DIGIT 3009 <a href="#obsolete.date.formats" class="smpl">date3</a> = month SP ( 2DIGIT / ( SP DIGIT ) ) 3010 <a href="#preferred.date.format" class="smpl">day</a> = 2DIGIT 3011 <a href="#preferred.date.format" class="smpl">day-name</a> = %x4D.6F.6E ; Mon 3012 / %x54.75.65 ; Tue 3013 / %x57.65.64 ; Wed 3014 / %x54.68.75 ; Thu 3015 / %x46.72.69 ; Fri 3016 / %x53.61.74 ; Sat 3017 / %x53.75.6E ; Sun 3018 <a href="#obsolete.date.formats" class="smpl">day-name-l</a> = %x4D.6F.6E.64.61.79 ; Monday 3019 / %x54.75.65.73.64.61.79 ; Tuesday 3020 / %x57.65.64.6E.65.73.64.61.79 ; Wednesday 3021 / %x54.68.75.72.73.64.61.79 ; Thursday 3022 / %x46.72.69.64.61.79 ; Friday 3023 / %x53.61.74.75.72.64.61.79 ; Saturday 3024 / %x53.75.6E.64.61.79 ; Sunday 2868 3025 <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*DIGIT 2869 3026 … … 2873 3030 *expect-params ] 2874 3031 3032 <a href="#preferred.date.format" class="smpl">hour</a> = 2DIGIT 3033 2875 3034 <a href="#header.from" class="smpl">mailbox</a> = <mailbox, defined in [RFC5322], Section 3.4> 2876 3035 <a href="#preferred.date.format" class="smpl">minute</a> = 2DIGIT 3036 <a href="#preferred.date.format" class="smpl">month</a> = %x4A.61.6E ; Jan 3037 / %x46.65.62 ; Feb 3038 / %x4D.61.72 ; Mar 3039 / %x41.70.72 ; Apr 3040 / %x4D.61.79 ; May 3041 / %x4A.75.6E ; Jun 3042 / %x4A.75.6C ; Jul 3043 / %x41.75.67 ; Aug 3044 / %x53.65.70 ; Sep 3045 / %x4F.63.74 ; Oct 3046 / %x4E.6F.76 ; Nov 3047 / %x44.65.63 ; Dec 3048 3049 <a href="#obsolete.date.formats" class="smpl">obs-date</a> = rfc850-date / asctime-date 2877 3050 <a href="#core.rules" class="smpl">obs-text</a> = <obs-text, defined in [Part1], Section 1.2.2> 2878 3051 2879 3052 <a href="#abnf.dependencies" class="smpl">partial-URI</a> = <partial-URI, defined in [Part1], Section 2.7> 2880 <a href="#abnf.dependencies" class="smpl">product</a> = <product, defined in [Part1], Section 5. 3>3053 <a href="#abnf.dependencies" class="smpl">product</a> = <product, defined in [Part1], Section 5.2> 2881 3054 2882 3055 <a href="#core.rules" class="smpl">quoted-string</a> = <quoted-string, defined in [Part1], Section 3.2.3> 2883 3056 3057 <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = day-name "," SP date1 SP time-of-day SP GMT 3058 <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = day-name-l "," SP date2 SP time-of-day SP GMT 3059 3060 <a href="#preferred.date.format" class="smpl">second</a> = 2DIGIT 3061 3062 <a href="#preferred.date.format" class="smpl">time-of-day</a> = hour ":" minute ":" second 2884 3063 <a href="#core.rules" class="smpl">token</a> = <token, defined in [Part1], Section 3.2.3> 2885 </pre> <div id="rfc.figure.u.28"></div> 3064 3065 <a href="#preferred.date.format" class="smpl">year</a> = 4DIGIT 3066 </pre> <div id="rfc.figure.u.37"></div> 2886 3067 <p>ABNF diagnostics:</p><pre class="inline">; Allow defined but not used 3068 ; Date defined but not used 2887 3069 ; Expect defined but not used 2888 3070 ; From defined but not used … … 3181 3363 <ul class="ind"> 3182 3364 <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul> 3183 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.22"><b>7.1.1</b></a>, <a href="#rfc.xref.status.100.2"> 9.2</a></li>3184 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.23"><b>7.1.2</b></a>, <a href="#rfc.xref.status.101.2"> 9.2</a></li>3365 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.22"><b>7.1.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li> 3366 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.23"><b>7.1.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li> 3185 3367 </ul> 3186 3368 </li> 3187 3369 <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul> 3188 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.24"><b>7.2.1</b></a>, <a href="#rfc.xref.status.200.2"> 9.2</a></li>3189 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.25"><b>7.2.2</b></a>, <a href="#rfc.xref.status.201.2"> 9.2</a></li>3190 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.26"><b>7.2.3</b></a>, <a href="#rfc.xref.status.202.2"> 9.2</a></li>3191 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.27"><b>7.2.4</b></a>, <a href="#rfc.xref.status.203.2"> 9.2</a>, <a href="#rfc.xref.status.203.3">A</a></li>3192 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.28"><b>7.2.5</b></a>, <a href="#rfc.xref.status.204.2"> 9.2</a></li>3193 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.29"><b>7.2.6</b></a>, <a href="#rfc.xref.status.205.2"> 9.2</a></li>3370 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.24"><b>7.2.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li> 3371 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.25"><b>7.2.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li> 3372 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.26"><b>7.2.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li> 3373 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.27"><b>7.2.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">A</a></li> 3374 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.28"><b>7.2.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li> 3375 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.29"><b>7.2.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li> 3194 3376 <li>206 Partial Content (status code) <a href="#rfc.iref.30"><b>7.2.7</b></a></li> 3195 3377 </ul> 3196 3378 </li> 3197 3379 <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul> 3198 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.31"><b>7.3.1</b></a>, <a href="#rfc.xref.status.300.2"> 9.2</a></li>3199 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.32"><b>7.3.2</b></a>, <a href="#rfc.xref.status.301.2"> 9.2</a>, <a href="#rfc.xref.status.301.3">A</a></li>3200 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.33"><b>7.3.3</b></a>, <a href="#rfc.xref.status.302.2"> 9.2</a>, <a href="#rfc.xref.status.302.3">A</a></li>3201 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.34"><b>7.3.4</b></a>, <a href="#rfc.xref.status.303.2"> 9.2</a></li>3380 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.31"><b>7.3.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li> 3381 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.32"><b>7.3.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">A</a></li> 3382 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.33"><b>7.3.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">A</a></li> 3383 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.34"><b>7.3.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li> 3202 3384 <li>304 Not Modified (status code) <a href="#rfc.iref.35"><b>7.3.5</b></a></li> 3203 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.36"><b>7.3.6</b></a>, <a href="#rfc.xref.status.305.2"> 9.2</a>, <a href="#rfc.xref.status.305.3">A</a></li>3204 <li>306 (Unused) (status code) <a href="#rfc.iref.37"><b>7.3.7</b></a>, <a href="#rfc.xref.status.306.1"> 9.2</a></li>3205 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.38"><b>7.3.8</b></a>, <a href="#rfc.xref.status.307.2"> 9.2</a>, <a href="#rfc.xref.status.307.3">A</a></li>3385 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.36"><b>7.3.6</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">A</a></li> 3386 <li>306 (Unused) (status code) <a href="#rfc.iref.37"><b>7.3.7</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li> 3387 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.38"><b>7.3.8</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">A</a></li> 3206 3388 </ul> 3207 3389 </li> 3208 3390 <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul> 3209 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.39"><b>7.4.1</b></a>, <a href="#rfc.xref.status.400.2"> 9.2</a></li>3391 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.39"><b>7.4.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li> 3210 3392 <li>401 Unauthorized (status code) <a href="#rfc.iref.40"><b>7.4.2</b></a></li> 3211 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.41"><b>7.4.3</b></a>, <a href="#rfc.xref.status.402.2"> 9.2</a></li>3212 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.42"><b>7.4.4</b></a>, <a href="#rfc.xref.status.403.2"> 9.2</a></li>3213 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.43"><b>7.4.5</b></a>, <a href="#rfc.xref.status.404.2"> 9.2</a></li>3214 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.44"><b>7.4.6</b></a>, <a href="#rfc.xref.status.405.2"> 9.2</a></li>3215 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.45"><b>7.4.7</b></a>, <a href="#rfc.xref.status.406.2"> 9.2</a></li>3216 <li>407 Proxy Authentication Required (status code) <a href="#rfc.iref.46"><b>7.4.8</b></a>, <a href="#rfc.xref.status.407.1"> 9.2</a></li>3217 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.47"><b>7.4.9</b></a>, <a href="#rfc.xref.status.408.2"> 9.2</a></li>3218 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.48"><b>7.4.10</b></a>, <a href="#rfc.xref.status.409.2"> 9.2</a></li>3219 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.49"><b>7.4.11</b></a>, <a href="#rfc.xref.status.410.2"> 9.2</a></li>3220 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.50"><b>7.4.12</b></a>, <a href="#rfc.xref.status.411.2"> 9.2</a></li>3393 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.41"><b>7.4.3</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li> 3394 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.42"><b>7.4.4</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li> 3395 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.43"><b>7.4.5</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li> 3396 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.44"><b>7.4.6</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li> 3397 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.45"><b>7.4.7</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li> 3398 <li>407 Proxy Authentication Required (status code) <a href="#rfc.iref.46"><b>7.4.8</b></a>, <a href="#rfc.xref.status.407.1">10.2</a></li> 3399 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.47"><b>7.4.9</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li> 3400 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.48"><b>7.4.10</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li> 3401 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.49"><b>7.4.11</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li> 3402 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.50"><b>7.4.12</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li> 3221 3403 <li>412 Precondition Failed (status code) <a href="#rfc.iref.51"><b>7.4.13</b></a></li> 3222 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.52"><b>7.4.14</b></a>, <a href="#rfc.xref.status.413.2"> 9.2</a></li>3223 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.53"><b>7.4.15</b></a>, <a href="#rfc.xref.status.414.2"> 9.2</a></li>3224 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.54"><b>7.4.16</b></a>, <a href="#rfc.xref.status.415.2"> 9.2</a></li>3404 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.52"><b>7.4.14</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li> 3405 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.53"><b>7.4.15</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li> 3406 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.54"><b>7.4.16</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li> 3225 3407 <li>416 Requested Range Not Satisfiable (status code) <a href="#rfc.iref.55"><b>7.4.17</b></a></li> 3226 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.56"><b>7.4.18</b></a>, <a href="#rfc.xref.status.417.2"> 9.2</a></li>3227 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.57"><b>7.4.19</b></a>, <a href="#rfc.xref.status.426.2"> 9.2</a>, <a href="#rfc.xref.status.426.3">A</a></li>3408 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.56"><b>7.4.18</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li> 3409 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.57"><b>7.4.19</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">A</a></li> 3228 3410 </ul> 3229 3411 </li> 3230 3412 <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul> 3231 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.58"><b>7.5.1</b></a>, <a href="#rfc.xref.status.500.2"> 9.2</a></li>3232 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.59"><b>7.5.2</b></a>, <a href="#rfc.xref.status.501.2"> 9.2</a></li>3233 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.60"><b>7.5.3</b></a>, <a href="#rfc.xref.status.502.2"> 9.2</a></li>3234 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.61"><b>7.5.4</b></a>, <a href="#rfc.xref.status.503.2"> 9.2</a></li>3235 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.62"><b>7.5.5</b></a>, <a href="#rfc.xref.status.504.2"> 9.2</a></li>3236 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.63"><b>7.5.6</b></a>, <a href="#rfc.xref.status.505.2"> 9.2</a></li>3413 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.58"><b>7.5.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li> 3414 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.59"><b>7.5.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li> 3415 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.60"><b>7.5.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li> 3416 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.61"><b>7.5.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li> 3417 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.62"><b>7.5.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li> 3418 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.63"><b>7.5.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li> 3237 3419 </ul> 3238 3420 </li> 3239 3421 <li><a id="rfc.index.A" href="#rfc.index.A"><b>A</b></a><ul> 3240 <li>Allow header field <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.a.1"><b> 8.1</b></a>, <a href="#rfc.xref.header.allow.3">9.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li>3422 <li>Allow header field <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.a.1"><b>9.1</b></a>, <a href="#rfc.xref.header.allow.3">10.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li> 3241 3423 </ul> 3242 3424 </li> 3243 3425 <li><a id="rfc.index.C" href="#rfc.index.C"><b>C</b></a><ul> 3244 <li>CONNECT method <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.c.1"><b>6.9</b></a>, <a href="#rfc.xref.CONNECT.2"> 9.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li>3426 <li>CONNECT method <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.c.1"><b>6.9</b></a>, <a href="#rfc.xref.CONNECT.2">10.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li> 3245 3427 </ul> 3246 3428 </li> 3247 3429 <li><a id="rfc.index.D" href="#rfc.index.D"><b>D</b></a><ul> 3248 <li>DELETE method <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.d.1"><b>6.7</b></a>, <a href="#rfc.xref.DELETE.2">9.1</a></li> 3430 <li>Date header field <a href="#rfc.xref.header.date.1">3.3</a>, <a href="#rfc.iref.d.2"><b>9.2</b></a>, <a href="#rfc.xref.header.date.2">10.3</a></li> 3431 <li>DELETE method <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.d.1"><b>6.7</b></a>, <a href="#rfc.xref.DELETE.2">10.1</a></li> 3249 3432 </ul> 3250 3433 </li> 3251 3434 <li><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul> 3252 <li>Expect header field <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">7.4.18</a>, <a href="#rfc.iref.e.1"><b> 8.2</b></a>, <a href="#rfc.xref.header.expect.3">9.3</a></li>3435 <li>Expect header field <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">7.4.18</a>, <a href="#rfc.iref.e.1"><b>9.3</b></a>, <a href="#rfc.xref.header.expect.3">10.3</a></li> 3253 3436 </ul> 3254 3437 </li> 3255 3438 <li><a id="rfc.index.F" href="#rfc.index.F"><b>F</b></a><ul> 3256 <li>From header field <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.f.1"><b> 8.3</b></a>, <a href="#rfc.xref.header.from.2">9.3</a></li>3439 <li>From header field <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.f.1"><b>9.4</b></a>, <a href="#rfc.xref.header.from.2">10.3</a></li> 3257 3440 </ul> 3258 3441 </li> 3259 3442 <li><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul> 3260 <li>GET method <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.g.5"><b>6.3</b></a>, <a href="#rfc.xref.GET.2"> 9.1</a></li>3443 <li>GET method <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.g.5"><b>6.3</b></a>, <a href="#rfc.xref.GET.2">10.1</a></li> 3261 3444 <li><tt>Grammar</tt> 3262 3445 <ul> 3263 <li><tt>Allow</tt> <a href="#rfc.iref.g.6"><b>8.1</b></a></li> 3264 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.16"><b>8.7</b></a></li> 3265 <li><tt>Expect</tt> <a href="#rfc.iref.g.7"><b>8.2</b></a></li> 3266 <li><tt>expect-params</tt> <a href="#rfc.iref.g.10"><b>8.2</b></a></li> 3267 <li><tt>expectation</tt> <a href="#rfc.iref.g.8"><b>8.2</b></a></li> 3268 <li><tt>expectation-extension</tt> <a href="#rfc.iref.g.9"><b>8.2</b></a></li> 3446 <li><tt>Allow</tt> <a href="#rfc.iref.g.22"><b>9.1</b></a></li> 3447 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.21"><b>8</b></a></li> 3448 <li><tt>Date</tt> <a href="#rfc.iref.g.23"><b>9.2</b></a></li> 3449 <li><tt>date1</tt> <a href="#rfc.iref.g.8"><b>8</b></a></li> 3450 <li><tt>day</tt> <a href="#rfc.iref.g.15"><b>8</b></a></li> 3451 <li><tt>day-name</tt> <a href="#rfc.iref.g.13"><b>8</b></a></li> 3452 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.14"><b>8</b></a></li> 3453 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.33"><b>9.8</b></a></li> 3454 <li><tt>Expect</tt> <a href="#rfc.iref.g.24"><b>9.3</b></a></li> 3455 <li><tt>expect-params</tt> <a href="#rfc.iref.g.27"><b>9.3</b></a></li> 3456 <li><tt>expectation</tt> <a href="#rfc.iref.g.25"><b>9.3</b></a></li> 3457 <li><tt>expectation-extension</tt> <a href="#rfc.iref.g.26"><b>9.3</b></a></li> 3269 3458 <li><tt>extension-code</tt> <a href="#rfc.iref.g.3"><b>4</b></a></li> 3270 <li><tt>From</tt> <a href="#rfc.iref.g.11"><b>8.3</b></a></li> 3271 <li><tt>Location</tt> <a href="#rfc.iref.g.12"><b>8.4</b></a></li> 3272 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.13"><b>8.5</b></a></li> 3459 <li><tt>From</tt> <a href="#rfc.iref.g.28"><b>9.4</b></a></li> 3460 <li><tt>GMT</tt> <a href="#rfc.iref.g.18"><b>8</b></a></li> 3461 <li><tt>hour</tt> <a href="#rfc.iref.g.10"><b>8</b></a></li> 3462 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.6"><b>8</b></a></li> 3463 <li><tt>Location</tt> <a href="#rfc.iref.g.29"><b>9.5</b></a></li> 3464 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.30"><b>9.6</b></a></li> 3273 3465 <li><tt>Method</tt> <a href="#rfc.iref.g.1"><b>2</b></a></li> 3466 <li><tt>minute</tt> <a href="#rfc.iref.g.11"><b>8</b></a></li> 3467 <li><tt>month</tt> <a href="#rfc.iref.g.16"><b>8</b></a></li> 3468 <li><tt>obs-date</tt> <a href="#rfc.iref.g.19"><b>8</b></a></li> 3274 3469 <li><tt>Reason-Phrase</tt> <a href="#rfc.iref.g.4"><b>4</b></a></li> 3275 <li><tt>Referer</tt> <a href="#rfc.iref.g.14"><b>8.6</b></a></li> 3276 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.15"><b>8.7</b></a></li> 3277 <li><tt>Server</tt> <a href="#rfc.iref.g.17"><b>8.8</b></a></li> 3470 <li><tt>Referer</tt> <a href="#rfc.iref.g.31"><b>9.7</b></a></li> 3471 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.32"><b>9.8</b></a></li> 3472 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.7"><b>8</b></a></li> 3473 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.20"><b>8</b></a></li> 3474 <li><tt>second</tt> <a href="#rfc.iref.g.12"><b>8</b></a></li> 3475 <li><tt>Server</tt> <a href="#rfc.iref.g.34"><b>9.9</b></a></li> 3278 3476 <li><tt>Status-Code</tt> <a href="#rfc.iref.g.2"><b>4</b></a></li> 3279 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.18"><b>8.9</b></a></li> 3477 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.9"><b>8</b></a></li> 3478 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.35"><b>9.10</b></a></li> 3479 <li><tt>year</tt> <a href="#rfc.iref.g.17"><b>8</b></a></li> 3280 3480 </ul> 3281 3481 </li> … … 3283 3483 </li> 3284 3484 <li><a id="rfc.index.H" href="#rfc.index.H"><b>H</b></a><ul> 3285 <li>HEAD method <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.h.1"><b>6.4</b></a>, <a href="#rfc.xref.HEAD.2"> 9.1</a></li>3485 <li>HEAD method <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.h.1"><b>6.4</b></a>, <a href="#rfc.xref.HEAD.2">10.1</a></li> 3286 3486 <li>Header Fields 3287 3487 <ul> 3288 <li>Allow <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.h.2"><b>8.1</b></a>, <a href="#rfc.xref.header.allow.3">9.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li> 3289 <li>Expect <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">7.4.18</a>, <a href="#rfc.iref.h.3"><b>8.2</b></a>, <a href="#rfc.xref.header.expect.3">9.3</a></li> 3290 <li>From <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.h.4"><b>8.3</b></a>, <a href="#rfc.xref.header.from.2">9.3</a></li> 3291 <li>Location <a href="#rfc.xref.header.location.1">3.3</a>, <a href="#rfc.xref.header.location.2">6.5</a>, <a href="#rfc.iref.h.5"><b>8.4</b></a>, <a href="#rfc.xref.header.location.3">9.3</a>, <a href="#rfc.xref.header.location.4">A</a></li> 3292 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">3.2</a>, <a href="#rfc.xref.header.max-forwards.2">6.2</a>, <a href="#rfc.xref.header.max-forwards.3">6.8</a>, <a href="#rfc.iref.h.6"><b>8.5</b></a>, <a href="#rfc.xref.header.max-forwards.4">9.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li> 3293 <li>Referer <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.h.7"><b>8.6</b></a>, <a href="#rfc.xref.header.referer.2">9.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li> 3294 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">7.5.4</a>, <a href="#rfc.iref.h.8"><b>8.7</b></a>, <a href="#rfc.xref.header.retry-after.3">9.3</a></li> 3295 <li>Server <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.h.9"><b>8.8</b></a>, <a href="#rfc.xref.header.server.2">9.3</a>, <a href="#rfc.xref.header.server.3">10.1</a>, <a href="#rfc.xref.header.server.4">A</a></li> 3296 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.iref.h.10"><b>8.9</b></a>, <a href="#rfc.xref.header.user-agent.2">9.3</a>, <a href="#rfc.xref.header.user-agent.3">10.1</a></li> 3488 <li>Allow <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.h.2"><b>9.1</b></a>, <a href="#rfc.xref.header.allow.3">10.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li> 3489 <li>Date <a href="#rfc.xref.header.date.1">3.3</a>, <a href="#rfc.iref.h.3"><b>9.2</b></a>, <a href="#rfc.xref.header.date.2">10.3</a></li> 3490 <li>Expect <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">7.4.18</a>, <a href="#rfc.iref.h.4"><b>9.3</b></a>, <a href="#rfc.xref.header.expect.3">10.3</a></li> 3491 <li>From <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.h.5"><b>9.4</b></a>, <a href="#rfc.xref.header.from.2">10.3</a></li> 3492 <li>Location <a href="#rfc.xref.header.location.1">3.3</a>, <a href="#rfc.xref.header.location.2">6.5</a>, <a href="#rfc.iref.h.6"><b>9.5</b></a>, <a href="#rfc.xref.header.location.3">10.3</a>, <a href="#rfc.xref.header.location.4">A</a></li> 3493 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">3.2</a>, <a href="#rfc.xref.header.max-forwards.2">6.2</a>, <a href="#rfc.xref.header.max-forwards.3">6.8</a>, <a href="#rfc.iref.h.7"><b>9.6</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li> 3494 <li>Referer <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.h.8"><b>9.7</b></a>, <a href="#rfc.xref.header.referer.2">10.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li> 3495 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">7.5.4</a>, <a href="#rfc.iref.h.9"><b>9.8</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li> 3496 <li>Server <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.h.10"><b>9.9</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">11.1</a>, <a href="#rfc.xref.header.server.4">A</a></li> 3497 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.iref.h.11"><b>9.10</b></a>, <a href="#rfc.xref.header.user-agent.2">10.3</a>, <a href="#rfc.xref.header.user-agent.3">11.1</a></li> 3297 3498 </ul> 3298 3499 </li> … … 3304 3505 </li> 3305 3506 <li><a id="rfc.index.L" href="#rfc.index.L"><b>L</b></a><ul> 3306 <li>Location header field <a href="#rfc.xref.header.location.1">3.3</a>, <a href="#rfc.xref.header.location.2">6.5</a>, <a href="#rfc.iref.l.1"><b> 8.4</b></a>, <a href="#rfc.xref.header.location.3">9.3</a>, <a href="#rfc.xref.header.location.4">A</a></li>3507 <li>Location header field <a href="#rfc.xref.header.location.1">3.3</a>, <a href="#rfc.xref.header.location.2">6.5</a>, <a href="#rfc.iref.l.1"><b>9.5</b></a>, <a href="#rfc.xref.header.location.3">10.3</a>, <a href="#rfc.xref.header.location.4">A</a></li> 3307 3508 </ul> 3308 3509 </li> 3309 3510 <li><a id="rfc.index.M" href="#rfc.index.M"><b>M</b></a><ul> 3310 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">3.2</a>, <a href="#rfc.xref.header.max-forwards.2">6.2</a>, <a href="#rfc.xref.header.max-forwards.3">6.8</a>, <a href="#rfc.iref.m.9"><b> 8.5</b></a>, <a href="#rfc.xref.header.max-forwards.4">9.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li>3511 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">3.2</a>, <a href="#rfc.xref.header.max-forwards.2">6.2</a>, <a href="#rfc.xref.header.max-forwards.3">6.8</a>, <a href="#rfc.iref.m.9"><b>9.6</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li> 3311 3512 <li>Methods 3312 3513 <ul> 3313 <li>CONNECT <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.m.8"><b>6.9</b></a>, <a href="#rfc.xref.CONNECT.2"> 9.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li>3314 <li>DELETE <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.m.6"><b>6.7</b></a>, <a href="#rfc.xref.DELETE.2"> 9.1</a></li>3315 <li>GET <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.m.2"><b>6.3</b></a>, <a href="#rfc.xref.GET.2"> 9.1</a></li>3316 <li>HEAD <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.m.3"><b>6.4</b></a>, <a href="#rfc.xref.HEAD.2"> 9.1</a></li>3317 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.m.1"><b>6.2</b></a>, <a href="#rfc.xref.OPTIONS.2"> 8.5</a>, <a href="#rfc.xref.OPTIONS.3">9.1</a></li>3318 <li>POST <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.m.4"><b>6.5</b></a>, <a href="#rfc.xref.POST.2"> 9.1</a>, <a href="#rfc.xref.POST.3">A</a></li>3319 <li>PUT <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.m.5"><b>6.6</b></a>, <a href="#rfc.xref.PUT.2"> 9.1</a>, <a href="#rfc.xref.PUT.3">A</a></li>3320 <li>TRACE <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.m.7"><b>6.8</b></a>, <a href="#rfc.xref.TRACE.2"> 8.5</a>, <a href="#rfc.xref.TRACE.3">9.1</a>, <a href="#rfc.xref.TRACE.4">10.1</a></li>3514 <li>CONNECT <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.m.8"><b>6.9</b></a>, <a href="#rfc.xref.CONNECT.2">10.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li> 3515 <li>DELETE <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.m.6"><b>6.7</b></a>, <a href="#rfc.xref.DELETE.2">10.1</a></li> 3516 <li>GET <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.m.2"><b>6.3</b></a>, <a href="#rfc.xref.GET.2">10.1</a></li> 3517 <li>HEAD <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.m.3"><b>6.4</b></a>, <a href="#rfc.xref.HEAD.2">10.1</a></li> 3518 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.m.1"><b>6.2</b></a>, <a href="#rfc.xref.OPTIONS.2">9.6</a>, <a href="#rfc.xref.OPTIONS.3">10.1</a></li> 3519 <li>POST <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.m.4"><b>6.5</b></a>, <a href="#rfc.xref.POST.2">10.1</a>, <a href="#rfc.xref.POST.3">A</a></li> 3520 <li>PUT <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.m.5"><b>6.6</b></a>, <a href="#rfc.xref.PUT.2">10.1</a>, <a href="#rfc.xref.PUT.3">A</a></li> 3521 <li>TRACE <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.m.7"><b>6.8</b></a>, <a href="#rfc.xref.TRACE.2">9.6</a>, <a href="#rfc.xref.TRACE.3">10.1</a>, <a href="#rfc.xref.TRACE.4">11.1</a></li> 3321 3522 </ul> 3322 3523 </li> … … 3324 3525 </li> 3325 3526 <li><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul> 3326 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.o.1"><b>6.2</b></a>, <a href="#rfc.xref.OPTIONS.2"> 8.5</a>, <a href="#rfc.xref.OPTIONS.3">9.1</a></li>3527 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.o.1"><b>6.2</b></a>, <a href="#rfc.xref.OPTIONS.2">9.6</a>, <a href="#rfc.xref.OPTIONS.3">10.1</a></li> 3327 3528 </ul> 3328 3529 </li> 3329 3530 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 3330 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.2</a>, <a href="#rfc.xref.Part1.3">1.2.1</a>, <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5">1.2.1</a>, <a href="#rfc.xref.Part1.6">1.2.1</a>, <a href="#rfc.xref.Part1.7">1.2.1</a>, <a href="#rfc.xref.Part1.8">1.2.1</a>, <a href="#rfc.xref.Part1.9">1.2.2</a>, <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.11">1.2.2</a>, <a href="#rfc.xref.Part1.12">1.2.2</a>, <a href="#rfc.xref.Part1.13">1.2.2</a>, <a href="#rfc.xref.Part1.14"> 1.2.2</a>, <a href="#rfc.xref.Part1.15">2</a>, <a href="#rfc.xref.Part1.16">2.2.1</a>, <a href="#rfc.xref.Part1.17">3</a>, <a href="#rfc.xref.Part1.18">3.1</a>, <a href="#rfc.xref.Part1.19">3.1</a>, <a href="#rfc.xref.Part1.20">3.1</a>, <a href="#rfc.xref.Part1.21">3.1</a>, <a href="#rfc.xref.Part1.22">3.1</a>, <a href="#rfc.xref.Part1.23">3.2</a>, <a href="#rfc.xref.Part1.24">3.2</a>, <a href="#rfc.xref.Part1.25">3.3</a>, <a href="#rfc.xref.Part1.26">5</a>, <a href="#rfc.xref.Part1.27">5.1</a>, <a href="#rfc.xref.Part1.28">6.8</a>, <a href="#rfc.xref.Part1.29">6.8</a>, <a href="#rfc.xref.Part1.30">6.9</a>, <a href="#rfc.xref.Part1.31">7.1.1</a>, <a href="#rfc.xref.Part1.32">7.1.2</a>, <a href="#rfc.xref.Part1.33">7.2.4</a>, <a href="#rfc.xref.Part1.34">7.2.6</a>, <a href="#rfc.xref.Part1.35">7.4.19</a>, <a href="#rfc.xref.Part1.36">7.5.6</a>, <a href="#rfc.xref.Part1.37">8.2</a>, <a href="#rfc.xref.Part1.38">8.8</a>, <a href="#rfc.xref.Part1.39">8.8</a>, <a href="#rfc.xref.Part1.40">8.8</a>, <a href="#rfc.xref.Part1.41">8.9</a>, <a href="#rfc.xref.Part1.42">8.9</a>, <a href="#rfc.xref.Part1.43">11</a>, <a href="#Part1"><b>12.1</b></a>, <a href="#rfc.xref.Part1.44">A</a><ul>3531 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.2</a>, <a href="#rfc.xref.Part1.3">1.2.1</a>, <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5">1.2.1</a>, <a href="#rfc.xref.Part1.6">1.2.1</a>, <a href="#rfc.xref.Part1.7">1.2.1</a>, <a href="#rfc.xref.Part1.8">1.2.1</a>, <a href="#rfc.xref.Part1.9">1.2.2</a>, <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.11">1.2.2</a>, <a href="#rfc.xref.Part1.12">1.2.2</a>, <a href="#rfc.xref.Part1.13">1.2.2</a>, <a href="#rfc.xref.Part1.14">2</a>, <a href="#rfc.xref.Part1.15">2.2.1</a>, <a href="#rfc.xref.Part1.16">3</a>, <a href="#rfc.xref.Part1.17">3.1</a>, <a href="#rfc.xref.Part1.18">3.1</a>, <a href="#rfc.xref.Part1.19">3.1</a>, <a href="#rfc.xref.Part1.20">3.1</a>, <a href="#rfc.xref.Part1.21">3.1</a>, <a href="#rfc.xref.Part1.22">3.2</a>, <a href="#rfc.xref.Part1.23">3.2</a>, <a href="#rfc.xref.Part1.24">3.3</a>, <a href="#rfc.xref.Part1.25">5</a>, <a href="#rfc.xref.Part1.26">5.1</a>, <a href="#rfc.xref.Part1.27">6.8</a>, <a href="#rfc.xref.Part1.28">6.8</a>, <a href="#rfc.xref.Part1.29">6.9</a>, <a href="#rfc.xref.Part1.30">7.1.1</a>, <a href="#rfc.xref.Part1.31">7.1.2</a>, <a href="#rfc.xref.Part1.32">7.2.4</a>, <a href="#rfc.xref.Part1.33">7.2.6</a>, <a href="#rfc.xref.Part1.34">7.4.19</a>, <a href="#rfc.xref.Part1.35">7.5.6</a>, <a href="#rfc.xref.Part1.36">9.3</a>, <a href="#rfc.xref.Part1.37">9.9</a>, <a href="#rfc.xref.Part1.38">9.9</a>, <a href="#rfc.xref.Part1.39">9.9</a>, <a href="#rfc.xref.Part1.40">9.10</a>, <a href="#rfc.xref.Part1.41">9.10</a>, <a href="#rfc.xref.Part1.42">12</a>, <a href="#Part1"><b>13.1</b></a>, <a href="#rfc.xref.Part1.43">A</a><ul> 3331 3532 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.2">1.2</a></li> 3332 <li><em>Section 1.2.1</em> <a href="#rfc.xref.Part1.1 8">3.1</a></li>3533 <li><em>Section 1.2.1</em> <a href="#rfc.xref.Part1.17">3.1</a></li> 3333 3534 <li><em>Section 1.2.2</em> <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5">1.2.1</a>, <a href="#rfc.xref.Part1.6">1.2.1</a></li> 3334 <li><em>Section 2.4</em> <a href="#rfc.xref.Part1.3 3">7.2.4</a></li>3335 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1.3 6">7.5.6</a></li>3336 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.9">1.2.2</a>, <a href="#rfc.xref.Part1.1 2">1.2.2</a>, <a href="#rfc.xref.Part1.14">1.2.2</a></li>3337 <li><em>Section 3.1.1.2</em> <a href="#rfc.xref.Part1. 30">6.9</a></li>3338 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.1 7">3</a>, <a href="#rfc.xref.Part1.20">3.1</a>, <a href="#rfc.xref.Part1.39">8.8</a>, <a href="#rfc.xref.Part1.42">8.9</a></li>3339 <li><em>Section 3.2.3</em> <a href="#rfc.xref.Part1.7">1.2.1</a>, <a href="#rfc.xref.Part1.8">1.2.1</a>, <a href="#rfc.xref.Part1.1 9">3.1</a></li>3340 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.1 6">2.2.1</a>, <a href="#rfc.xref.Part1.26">5</a>, <a href="#rfc.xref.Part1.34">7.2.6</a></li>3341 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.1 5">2</a>, <a href="#rfc.xref.Part1.25">3.3</a>, <a href="#rfc.xref.Part1.27">5.1</a></li>3342 <li><em>Section 5.1 </em> <a href="#rfc.xref.Part1.11">1.2.2</a></li>3343 <li><em>Section 5.2 .1</em> <a href="#rfc.xref.Part1.22">3.1</a></li>3344 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1.13">1.2.2</a>, <a href="#rfc.xref.Part1.38">8.8</a>, <a href="#rfc.xref.Part1.41">8.9</a></li>3345 <li><em>Section 6.2.3</em> <a href="#rfc.xref.Part1.31">7.1.1</a>, <a href="#rfc.xref.Part1.37">8.2</a></li>3346 <li><em>Section 8. 1</em> <a href="#rfc.xref.Part1.21">3.1</a></li>3535 <li><em>Section 2.4</em> <a href="#rfc.xref.Part1.32">7.2.4</a></li> 3536 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1.35">7.5.6</a></li> 3537 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.9">1.2.2</a>, <a href="#rfc.xref.Part1.11">1.2.2</a>, <a href="#rfc.xref.Part1.13">1.2.2</a></li> 3538 <li><em>Section 3.1.1.2</em> <a href="#rfc.xref.Part1.29">6.9</a></li> 3539 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.16">3</a>, <a href="#rfc.xref.Part1.19">3.1</a>, <a href="#rfc.xref.Part1.38">9.9</a>, <a href="#rfc.xref.Part1.41">9.10</a></li> 3540 <li><em>Section 3.2.3</em> <a href="#rfc.xref.Part1.7">1.2.1</a>, <a href="#rfc.xref.Part1.8">1.2.1</a>, <a href="#rfc.xref.Part1.18">3.1</a></li> 3541 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.15">2.2.1</a>, <a href="#rfc.xref.Part1.25">5</a>, <a href="#rfc.xref.Part1.33">7.2.6</a></li> 3542 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.14">2</a>, <a href="#rfc.xref.Part1.24">3.3</a>, <a href="#rfc.xref.Part1.26">5.1</a></li> 3543 <li><em>Section 5.1.1</em> <a href="#rfc.xref.Part1.21">3.1</a></li> 3544 <li><em>Section 5.2</em> <a href="#rfc.xref.Part1.12">1.2.2</a>, <a href="#rfc.xref.Part1.37">9.9</a>, <a href="#rfc.xref.Part1.40">9.10</a></li> 3545 <li><em>Section 6.2.3</em> <a href="#rfc.xref.Part1.30">7.1.1</a>, <a href="#rfc.xref.Part1.36">9.3</a></li> 3546 <li><em>Section 8.1</em> <a href="#rfc.xref.Part1.20">3.1</a></li> 3547 <li><em>Section 8.3</em> <a href="#rfc.xref.Part1.22">3.2</a></li> 3347 3548 <li><em>Section 8.4</em> <a href="#rfc.xref.Part1.23">3.2</a></li> 3348 <li><em>Section 8.5</em> <a href="#rfc.xref.Part1.24">3.2</a></li> 3349 <li><em>Section 8.8</em> <a href="#rfc.xref.Part1.32">7.1.2</a>, <a href="#rfc.xref.Part1.35">7.4.19</a></li> 3350 <li><em>Section 8.9</em> <a href="#rfc.xref.Part1.28">6.8</a>, <a href="#rfc.xref.Part1.40">8.8</a>, <a href="#rfc.xref.Part1.44">A</a></li> 3351 <li><em>Section 9.3.1</em> <a href="#rfc.xref.Part1.29">6.8</a></li> 3352 <li><em>Section 11</em> <a href="#rfc.xref.Part1.43">11</a></li> 3549 <li><em>Section 8.7</em> <a href="#rfc.xref.Part1.31">7.1.2</a>, <a href="#rfc.xref.Part1.34">7.4.19</a></li> 3550 <li><em>Section 8.8</em> <a href="#rfc.xref.Part1.27">6.8</a>, <a href="#rfc.xref.Part1.39">9.9</a>, <a href="#rfc.xref.Part1.43">A</a></li> 3551 <li><em>Section 9.3.1</em> <a href="#rfc.xref.Part1.28">6.8</a></li> 3552 <li><em>Section 11</em> <a href="#rfc.xref.Part1.42">12</a></li> 3353 3553 </ul> 3354 3554 </li> 3355 <li><em>Part3</em> <a href="#rfc.xref.Part3.1">3.2</a>, <a href="#rfc.xref.Part3.2">3.2</a>, <a href="#rfc.xref.Part3.3">3.2</a>, <a href="#rfc.xref.Part3.4">3.2</a>, <a href="#rfc.xref.Part3.5">5</a>, <a href="#rfc.xref.Part3.6">6.5</a>, <a href="#rfc.xref.Part3.7">7.3</a>, <a href="#rfc.xref.Part3.8">7.3.1</a>, <a href="#rfc.xref.Part3.9">7.4.7</a>, <a href="#rfc.xref.Part3.10"> 8.4</a>, <a href="#Part3"><b>12.1</b></a><ul>3555 <li><em>Part3</em> <a href="#rfc.xref.Part3.1">3.2</a>, <a href="#rfc.xref.Part3.2">3.2</a>, <a href="#rfc.xref.Part3.3">3.2</a>, <a href="#rfc.xref.Part3.4">3.2</a>, <a href="#rfc.xref.Part3.5">5</a>, <a href="#rfc.xref.Part3.6">6.5</a>, <a href="#rfc.xref.Part3.7">7.3</a>, <a href="#rfc.xref.Part3.8">7.3.1</a>, <a href="#rfc.xref.Part3.9">7.4.7</a>, <a href="#rfc.xref.Part3.10">9.5</a>, <a href="#Part3"><b>13.1</b></a><ul> 3356 3556 <li><em>Section 5</em> <a href="#rfc.xref.Part3.8">7.3.1</a></li> 3357 3557 <li><em>Section 5.2</em> <a href="#rfc.xref.Part3.7">7.3</a></li> … … 3361 3561 <li><em>Section 6.3</em> <a href="#rfc.xref.Part3.3">3.2</a></li> 3362 3562 <li><em>Section 6.4</em> <a href="#rfc.xref.Part3.4">3.2</a></li> 3363 <li><em>Section 6.7</em> <a href="#rfc.xref.Part3.6">6.5</a>, <a href="#rfc.xref.Part3.10"> 8.4</a></li>3563 <li><em>Section 6.7</em> <a href="#rfc.xref.Part3.6">6.5</a>, <a href="#rfc.xref.Part3.10">9.5</a></li> 3364 3564 </ul> 3365 3565 </li> 3366 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3.2</a>, <a href="#rfc.xref.Part4.2">3.2</a>, <a href="#rfc.xref.Part4.3">3.2</a>, <a href="#rfc.xref.Part4.4">3.2</a>, <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.6">4.1</a>, <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.9">7.2.2</a>, <a href="#rfc.xref.Part4.10">7.3.5</a>, <a href="#rfc.xref.Part4.11">7.4.13</a>, <a href="#Part4"><b>1 2.1</b></a>, <a href="#rfc.xref.Part4.12">C.2</a><ul>3367 <li><em> Section 2.3</em> <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.9">7.2.2</a></li>3368 <li><em> Section 3.1</em> <a href="#rfc.xref.Part4.1">3.2</a></li>3369 <li><em> Section 3.2</em> <a href="#rfc.xref.Part4.3">3.2</a></li>3370 <li><em> Section 3.3</em> <a href="#rfc.xref.Part4.2">3.2</a></li>3371 <li><em> Section 3.4</em> <a href="#rfc.xref.Part4.4">3.2</a></li>3372 <li><em> Section 4</em> <a href="#rfc.xref.Part4.6">4.1</a></li>3373 <li><em> Section 4.1</em> <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.10">7.3.5</a></li>3374 <li><em> Section 4.2</em> <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.11">7.4.13</a></li>3566 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3.2</a>, <a href="#rfc.xref.Part4.2">3.2</a>, <a href="#rfc.xref.Part4.3">3.2</a>, <a href="#rfc.xref.Part4.4">3.2</a>, <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.6">4.1</a>, <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.9">7.2.2</a>, <a href="#rfc.xref.Part4.10">7.3.5</a>, <a href="#rfc.xref.Part4.11">7.4.13</a>, <a href="#Part4"><b>13.1</b></a>, <a href="#rfc.xref.Part4.12">C.2</a><ul> 3567 <li><em>Appendix </em> <a href="#rfc.xref.Part4.1">3.2</a></li> 3568 <li><em>Appendix </em> <a href="#rfc.xref.Part4.2">3.2</a></li> 3569 <li><em>Appendix </em> <a href="#rfc.xref.Part4.3">3.2</a></li> 3570 <li><em>Appendix </em> <a href="#rfc.xref.Part4.4">3.2</a></li> 3571 <li><em>Appendix </em> <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.9">7.2.2</a></li> 3572 <li><em>Appendix </em> <a href="#rfc.xref.Part4.6">4.1</a></li> 3573 <li><em>Appendix </em> <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.10">7.3.5</a></li> 3574 <li><em>Appendix </em> <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.11">7.4.13</a></li> 3375 3575 </ul> 3376 3576 </li> 3377 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">3.2</a>, <a href="#rfc.xref.Part5.2">3.2</a>, <a href="#rfc.xref.Part5.3">3.3</a>, <a href="#rfc.xref.Part5.4">4.1</a>, <a href="#rfc.xref.Part5.5">4.1</a>, <a href="#rfc.xref.Part5.6">4.1</a>, <a href="#rfc.xref.Part5.7">6.3</a>, <a href="#rfc.xref.Part5.8">7.2.7</a>, <a href="#rfc.xref.Part5.9">7.4.17</a>, <a href="#rfc.xref.Part5.10">7.4.17</a>, <a href="#Part5"><b>1 2.1</b></a><ul>3577 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">3.2</a>, <a href="#rfc.xref.Part5.2">3.2</a>, <a href="#rfc.xref.Part5.3">3.3</a>, <a href="#rfc.xref.Part5.4">4.1</a>, <a href="#rfc.xref.Part5.5">4.1</a>, <a href="#rfc.xref.Part5.6">4.1</a>, <a href="#rfc.xref.Part5.7">6.3</a>, <a href="#rfc.xref.Part5.8">7.2.7</a>, <a href="#rfc.xref.Part5.9">7.4.17</a>, <a href="#rfc.xref.Part5.10">7.4.17</a>, <a href="#Part5"><b>13.1</b></a><ul> 3378 3578 <li><em>Section 3</em> <a href="#rfc.xref.Part5.4">4.1</a></li> 3379 3579 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5.5">4.1</a>, <a href="#rfc.xref.Part5.8">7.2.7</a></li> … … 3384 3584 </ul> 3385 3585 </li> 3386 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2">3.1</a>, <a href="#rfc.xref.Part6.3">3.3</a>, <a href="#rfc.xref.Part6.4">3.3</a>, <a href="#rfc.xref.Part6.5">4.2.1</a>, <a href="#rfc.xref.Part6.6">6.3</a>, <a href="#rfc.xref.Part6.7">6.4</a>, <a href="#rfc.xref.Part6.8">6.5</a>, <a href="#rfc.xref.Part6.9">6.6</a>, <a href="#rfc.xref.Part6.10">6.7</a>, <a href="#rfc.xref.Part6.11">7.2.1</a>, <a href="#rfc.xref.Part6.12">7.2.4</a>, <a href="#rfc.xref.Part6.13">7.2.4</a>, <a href="#rfc.xref.Part6.14">7.2.4</a>, <a href="#rfc.xref.Part6.15">7.2.7</a>, <a href="#rfc.xref.Part6.16">7.3.1</a>, <a href="#rfc.xref.Part6.17">7.3.2</a>, <a href="#rfc.xref.Part6.18">7.4.11</a>, <a href="#Part6"><b>1 2.1</b></a><ul>3586 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2">3.1</a>, <a href="#rfc.xref.Part6.3">3.3</a>, <a href="#rfc.xref.Part6.4">3.3</a>, <a href="#rfc.xref.Part6.5">4.2.1</a>, <a href="#rfc.xref.Part6.6">6.3</a>, <a href="#rfc.xref.Part6.7">6.4</a>, <a href="#rfc.xref.Part6.8">6.5</a>, <a href="#rfc.xref.Part6.9">6.6</a>, <a href="#rfc.xref.Part6.10">6.7</a>, <a href="#rfc.xref.Part6.11">7.2.1</a>, <a href="#rfc.xref.Part6.12">7.2.4</a>, <a href="#rfc.xref.Part6.13">7.2.4</a>, <a href="#rfc.xref.Part6.14">7.2.4</a>, <a href="#rfc.xref.Part6.15">7.2.7</a>, <a href="#rfc.xref.Part6.16">7.3.1</a>, <a href="#rfc.xref.Part6.17">7.3.2</a>, <a href="#rfc.xref.Part6.18">7.4.11</a>, <a href="#Part6"><b>13.1</b></a><ul> 3387 3587 <li><em>Section 2.3.1</em> <a href="#rfc.xref.Part6.8">6.5</a></li> 3388 3588 <li><em>Section 2.3.1.1</em> <a href="#rfc.xref.Part6.11">7.2.1</a>, <a href="#rfc.xref.Part6.14">7.2.4</a>, <a href="#rfc.xref.Part6.15">7.2.7</a>, <a href="#rfc.xref.Part6.16">7.3.1</a>, <a href="#rfc.xref.Part6.17">7.3.2</a>, <a href="#rfc.xref.Part6.18">7.4.11</a></li> … … 3394 3594 </ul> 3395 3595 </li> 3396 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3.2</a>, <a href="#rfc.xref.Part7.2">3.2</a>, <a href="#rfc.xref.Part7.3">3.3</a>, <a href="#rfc.xref.Part7.4">3.3</a>, <a href="#rfc.xref.Part7.5">4.1</a>, <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.7">4.1</a>, <a href="#rfc.xref.Part7.8">7.4.2</a>, <a href="#rfc.xref.Part7.9">7.4.8</a>, <a href="#Part7"><b>1 2.1</b></a><ul>3596 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3.2</a>, <a href="#rfc.xref.Part7.2">3.2</a>, <a href="#rfc.xref.Part7.3">3.3</a>, <a href="#rfc.xref.Part7.4">3.3</a>, <a href="#rfc.xref.Part7.5">4.1</a>, <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.7">4.1</a>, <a href="#rfc.xref.Part7.8">7.4.2</a>, <a href="#rfc.xref.Part7.9">7.4.8</a>, <a href="#Part7"><b>13.1</b></a><ul> 3397 3597 <li><em>Section 3</em> <a href="#rfc.xref.Part7.5">4.1</a></li> 3398 3598 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.8">7.4.2</a></li> … … 3404 3604 </ul> 3405 3605 </li> 3406 <li>POST method <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.p.1"><b>6.5</b></a>, <a href="#rfc.xref.POST.2"> 9.1</a>, <a href="#rfc.xref.POST.3">A</a></li>3407 <li>PUT method <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.p.2"><b>6.6</b></a>, <a href="#rfc.xref.PUT.2"> 9.1</a>, <a href="#rfc.xref.PUT.3">A</a></li>3606 <li>POST method <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.p.1"><b>6.5</b></a>, <a href="#rfc.xref.POST.2">10.1</a>, <a href="#rfc.xref.POST.3">A</a></li> 3607 <li>PUT method <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.p.2"><b>6.6</b></a>, <a href="#rfc.xref.PUT.2">10.1</a>, <a href="#rfc.xref.PUT.3">A</a></li> 3408 3608 </ul> 3409 3609 </li> 3410 3610 <li><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul> 3411 <li>Referer header field <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.r.1"><b>8.6</b></a>, <a href="#rfc.xref.header.referer.2">9.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li> 3412 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">7.5.4</a>, <a href="#rfc.iref.r.2"><b>8.7</b></a>, <a href="#rfc.xref.header.retry-after.3">9.3</a></li> 3413 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">7.3</a>, <a href="#RFC1945"><b>12.2</b></a><ul> 3611 <li>Referer header field <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.r.1"><b>9.7</b></a>, <a href="#rfc.xref.header.referer.2">10.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li> 3612 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">7.5.4</a>, <a href="#rfc.iref.r.2"><b>9.8</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li> 3613 <li><em>RFC1123</em> <a href="#rfc.xref.RFC1123.1">8</a>, <a href="#rfc.xref.RFC1123.2">8</a>, <a href="#RFC1123"><b>13.2</b></a><ul> 3614 <li><em>Section 5.2.14</em> <a href="#rfc.xref.RFC1123.2">8</a></li> 3615 </ul> 3616 </li> 3617 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">7.3</a>, <a href="#RFC1945"><b>13.2</b></a><ul> 3414 3618 <li><em>Section 9.3</em> <a href="#rfc.xref.RFC1945.1">7.3</a></li> 3415 3619 </ul> 3416 3620 </li> 3417 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">7.3</a>, <a href="#rfc.xref.RFC2068.2">7.3</a>, <a href="#RFC2068"><b>1 2.2</b></a><ul>3621 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">7.3</a>, <a href="#rfc.xref.RFC2068.2">7.3</a>, <a href="#RFC2068"><b>13.2</b></a><ul> 3418 3622 <li><em>Section 10.3</em> <a href="#rfc.xref.RFC2068.2">7.3</a></li> 3419 3623 <li><em>Section 10.3.4</em> <a href="#rfc.xref.RFC2068.1">7.3</a></li> 3420 3624 </ul> 3421 3625 </li> 3422 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.1</a>, <a href="#RFC2119"><b>1 2.1</b></a></li>3423 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2">7.3</a>, <a href="#RFC2616"><b>1 2.2</b></a>, <a href="#rfc.xref.RFC2616.3">C.1</a><ul>3626 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.1</a>, <a href="#RFC2119"><b>13.1</b></a></li> 3627 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2">7.3</a>, <a href="#RFC2616"><b>13.2</b></a>, <a href="#rfc.xref.RFC2616.3">C.1</a><ul> 3424 3628 <li><em>Section 10.3.8</em> <a href="#rfc.xref.RFC2616.2">7.3</a></li> 3425 3629 </ul> 3426 3630 </li> 3427 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1"> 9.2</a>, <a href="#RFC2817"><b>12.2</b></a>, <a href="#rfc.xref.RFC2817.2">A</a>, <a href="#rfc.xref.RFC2817.3">A</a>, <a href="#rfc.xref.RFC2817.4">A</a><ul>3428 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1"> 9.2</a>, <a href="#rfc.xref.RFC2817.2">A</a></li>3631 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#RFC2817"><b>13.2</b></a>, <a href="#rfc.xref.RFC2817.2">A</a>, <a href="#rfc.xref.RFC2817.3">A</a>, <a href="#rfc.xref.RFC2817.4">A</a><ul> 3632 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#rfc.xref.RFC2817.2">A</a></li> 3429 3633 </ul> 3430 3634 </li> 3431 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">3.1</a>, <a href="#rfc.xref.RFC3864.2">3.1</a>, <a href="#rfc.xref.RFC3864.3"> 9.3</a>, <a href="#RFC3864"><b>12.2</b></a><ul>3635 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">3.1</a>, <a href="#rfc.xref.RFC3864.2">3.1</a>, <a href="#rfc.xref.RFC3864.3">10.3</a>, <a href="#RFC3864"><b>13.2</b></a><ul> 3432 3636 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC3864.2">3.1</a></li> 3433 3637 </ul> 3434 3638 </li> 3435 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1"> 8.4</a>, <a href="#rfc.xref.RFC3986.2">8.4</a>, <a href="#RFC3986"><b>12.1</b></a><ul>3436 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1"> 8.4</a></li>3437 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2"> 8.4</a></li>3639 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1">9.5</a>, <a href="#rfc.xref.RFC3986.2">9.5</a>, <a href="#RFC3986"><b>13.1</b></a><ul> 3640 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1">9.5</a></li> 3641 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2">9.5</a></li> 3438 3642 </ul> 3439 3643 </li> 3440 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#RFC5226"><b>1 2.2</b></a><ul>3644 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#RFC5226"><b>13.2</b></a><ul> 3441 3645 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a></li> 3442 3646 </ul> 3443 3647 </li> 3444 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="#rfc.xref.RFC5234.2">1.2</a>, <a href="#rfc.xref.RFC5234.3">3.1</a>, <a href="#RFC5234"><b>1 2.1</b></a><ul>3648 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="#rfc.xref.RFC5234.2">1.2</a>, <a href="#rfc.xref.RFC5234.3">3.1</a>, <a href="#RFC5234"><b>13.1</b></a><ul> 3445 3649 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.2">1.2</a></li> 3446 3650 </ul> 3447 3651 </li> 3448 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1">8.3</a>, <a href="#rfc.xref.RFC5322.2">8.3</a>, <a href="#RFC5322"><b>12.2</b></a><ul> 3449 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.1">8.3</a>, <a href="#rfc.xref.RFC5322.2">8.3</a></li> 3652 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1">8</a>, <a href="#rfc.xref.RFC5322.2">9.2</a>, <a href="#rfc.xref.RFC5322.3">9.4</a>, <a href="#rfc.xref.RFC5322.4">9.4</a>, <a href="#RFC5322"><b>13.2</b></a><ul> 3653 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC5322.1">8</a></li> 3654 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.3">9.4</a>, <a href="#rfc.xref.RFC5322.4">9.4</a></li> 3655 <li><em>Section 3.6.1</em> <a href="#rfc.xref.RFC5322.2">9.2</a></li> 3450 3656 </ul> 3451 3657 </li> 3452 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">6.6</a>, <a href="#RFC5789"><b>1 2.2</b></a></li>3453 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">3.1</a>, <a href="#RFC5987"><b>1 2.2</b></a></li>3658 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">6.6</a>, <a href="#RFC5789"><b>13.2</b></a></li> 3659 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">3.1</a>, <a href="#RFC5987"><b>13.2</b></a></li> 3454 3660 </ul> 3455 3661 </li> 3456 3662 <li><a id="rfc.index.S" href="#rfc.index.S"><b>S</b></a><ul> 3457 3663 <li>Safe Methods <a href="#rfc.iref.s.1"><b>6.1.1</b></a></li> 3458 <li>Server header field <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.s.44"><b> 8.8</b></a>, <a href="#rfc.xref.header.server.2">9.3</a>, <a href="#rfc.xref.header.server.3">10.1</a>, <a href="#rfc.xref.header.server.4">A</a></li>3664 <li>Server header field <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.s.44"><b>9.9</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">11.1</a>, <a href="#rfc.xref.header.server.4">A</a></li> 3459 3665 <li>Status Codes 3460 3666 <ul> 3461 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s.2"><b>7.1.1</b></a>, <a href="#rfc.xref.status.100.2"> 9.2</a></li>3462 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s.3"><b>7.1.2</b></a>, <a href="#rfc.xref.status.101.2"> 9.2</a></li>3463 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s.4"><b>7.2.1</b></a>, <a href="#rfc.xref.status.200.2"> 9.2</a></li>3464 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s.5"><b>7.2.2</b></a>, <a href="#rfc.xref.status.201.2"> 9.2</a></li>3465 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s.6"><b>7.2.3</b></a>, <a href="#rfc.xref.status.202.2"> 9.2</a></li>3466 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s.7"><b>7.2.4</b></a>, <a href="#rfc.xref.status.203.2"> 9.2</a>, <a href="#rfc.xref.status.203.3">A</a></li>3467 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.8"><b>7.2.5</b></a>, <a href="#rfc.xref.status.204.2"> 9.2</a></li>3468 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.9"><b>7.2.6</b></a>, <a href="#rfc.xref.status.205.2"> 9.2</a></li>3667 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s.2"><b>7.1.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li> 3668 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s.3"><b>7.1.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li> 3669 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s.4"><b>7.2.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li> 3670 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s.5"><b>7.2.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li> 3671 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s.6"><b>7.2.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li> 3672 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s.7"><b>7.2.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">A</a></li> 3673 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.8"><b>7.2.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li> 3674 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.9"><b>7.2.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li> 3469 3675 <li>206 Partial Content <a href="#rfc.iref.s.10"><b>7.2.7</b></a></li> 3470 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.11"><b>7.3.1</b></a>, <a href="#rfc.xref.status.300.2"> 9.2</a></li>3471 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.12"><b>7.3.2</b></a>, <a href="#rfc.xref.status.301.2"> 9.2</a>, <a href="#rfc.xref.status.301.3">A</a></li>3472 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.13"><b>7.3.3</b></a>, <a href="#rfc.xref.status.302.2"> 9.2</a>, <a href="#rfc.xref.status.302.3">A</a></li>3473 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.s.14"><b>7.3.4</b></a>, <a href="#rfc.xref.status.303.2"> 9.2</a></li>3676 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.11"><b>7.3.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li> 3677 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.12"><b>7.3.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">A</a></li> 3678 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.13"><b>7.3.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">A</a></li> 3679 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.s.14"><b>7.3.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li> 3474 3680 <li>304 Not Modified <a href="#rfc.iref.s.15"><b>7.3.5</b></a></li> 3475 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.16"><b>7.3.6</b></a>, <a href="#rfc.xref.status.305.2"> 9.2</a>, <a href="#rfc.xref.status.305.3">A</a></li>3476 <li>306 (Unused) <a href="#rfc.iref.s.17"><b>7.3.7</b></a>, <a href="#rfc.xref.status.306.1"> 9.2</a></li>3477 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.s.18"><b>7.3.8</b></a>, <a href="#rfc.xref.status.307.2"> 9.2</a>, <a href="#rfc.xref.status.307.3">A</a></li>3478 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.19"><b>7.4.1</b></a>, <a href="#rfc.xref.status.400.2"> 9.2</a></li>3681 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.16"><b>7.3.6</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">A</a></li> 3682 <li>306 (Unused) <a href="#rfc.iref.s.17"><b>7.3.7</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li> 3683 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.s.18"><b>7.3.8</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">A</a></li> 3684 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.19"><b>7.4.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li> 3479 3685 <li>401 Unauthorized <a href="#rfc.iref.s.20"><b>7.4.2</b></a></li> 3480 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.21"><b>7.4.3</b></a>, <a href="#rfc.xref.status.402.2"> 9.2</a></li>3481 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.22"><b>7.4.4</b></a>, <a href="#rfc.xref.status.403.2"> 9.2</a></li>3482 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.23"><b>7.4.5</b></a>, <a href="#rfc.xref.status.404.2"> 9.2</a></li>3483 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.24"><b>7.4.6</b></a>, <a href="#rfc.xref.status.405.2"> 9.2</a></li>3484 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.25"><b>7.4.7</b></a>, <a href="#rfc.xref.status.406.2"> 9.2</a></li>3485 <li>407 Proxy Authentication Required <a href="#rfc.iref.s.26"><b>7.4.8</b></a>, <a href="#rfc.xref.status.407.1"> 9.2</a></li>3486 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.27"><b>7.4.9</b></a>, <a href="#rfc.xref.status.408.2"> 9.2</a></li>3487 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.28"><b>7.4.10</b></a>, <a href="#rfc.xref.status.409.2"> 9.2</a></li>3488 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s.29"><b>7.4.11</b></a>, <a href="#rfc.xref.status.410.2"> 9.2</a></li>3489 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.30"><b>7.4.12</b></a>, <a href="#rfc.xref.status.411.2"> 9.2</a></li>3686 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.21"><b>7.4.3</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li> 3687 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.22"><b>7.4.4</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li> 3688 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.23"><b>7.4.5</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li> 3689 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.24"><b>7.4.6</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li> 3690 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.25"><b>7.4.7</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li> 3691 <li>407 Proxy Authentication Required <a href="#rfc.iref.s.26"><b>7.4.8</b></a>, <a href="#rfc.xref.status.407.1">10.2</a></li> 3692 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.27"><b>7.4.9</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li> 3693 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.28"><b>7.4.10</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li> 3694 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s.29"><b>7.4.11</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li> 3695 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.30"><b>7.4.12</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li> 3490 3696 <li>412 Precondition Failed <a href="#rfc.iref.s.31"><b>7.4.13</b></a></li> 3491 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.32"><b>7.4.14</b></a>, <a href="#rfc.xref.status.413.2"> 9.2</a></li>3492 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.33"><b>7.4.15</b></a>, <a href="#rfc.xref.status.414.2"> 9.2</a></li>3493 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.34"><b>7.4.16</b></a>, <a href="#rfc.xref.status.415.2"> 9.2</a></li>3697 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.32"><b>7.4.14</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li> 3698 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.33"><b>7.4.15</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li> 3699 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.34"><b>7.4.16</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li> 3494 3700 <li>416 Requested Range Not Satisfiable <a href="#rfc.iref.s.35"><b>7.4.17</b></a></li> 3495 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.36"><b>7.4.18</b></a>, <a href="#rfc.xref.status.417.2"> 9.2</a></li>3496 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.37"><b>7.4.19</b></a>, <a href="#rfc.xref.status.426.2"> 9.2</a>, <a href="#rfc.xref.status.426.3">A</a></li>3497 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.38"><b>7.5.1</b></a>, <a href="#rfc.xref.status.500.2"> 9.2</a></li>3498 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.39"><b>7.5.2</b></a>, <a href="#rfc.xref.status.501.2"> 9.2</a></li>3499 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s.40"><b>7.5.3</b></a>, <a href="#rfc.xref.status.502.2"> 9.2</a></li>3500 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.41"><b>7.5.4</b></a>, <a href="#rfc.xref.status.503.2"> 9.2</a></li>3501 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.42"><b>7.5.5</b></a>, <a href="#rfc.xref.status.504.2"> 9.2</a></li>3502 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.43"><b>7.5.6</b></a>, <a href="#rfc.xref.status.505.2"> 9.2</a></li>3701 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.36"><b>7.4.18</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li> 3702 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.37"><b>7.4.19</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">A</a></li> 3703 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.38"><b>7.5.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li> 3704 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.39"><b>7.5.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li> 3705 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s.40"><b>7.5.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li> 3706 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.41"><b>7.5.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li> 3707 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.42"><b>7.5.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li> 3708 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.43"><b>7.5.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li> 3503 3709 </ul> 3504 3710 </li> … … 3506 3712 </li> 3507 3713 <li><a id="rfc.index.T" href="#rfc.index.T"><b>T</b></a><ul> 3508 <li>TRACE method <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.t.1"><b>6.8</b></a>, <a href="#rfc.xref.TRACE.2"> 8.5</a>, <a href="#rfc.xref.TRACE.3">9.1</a>, <a href="#rfc.xref.TRACE.4">10.1</a></li>3714 <li>TRACE method <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.t.1"><b>6.8</b></a>, <a href="#rfc.xref.TRACE.2">9.6</a>, <a href="#rfc.xref.TRACE.3">10.1</a>, <a href="#rfc.xref.TRACE.4">11.1</a></li> 3509 3715 </ul> 3510 3716 </li> 3511 3717 <li><a id="rfc.index.U" href="#rfc.index.U"><b>U</b></a><ul> 3512 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.iref.u.1"><b> 8.9</b></a>, <a href="#rfc.xref.header.user-agent.2">9.3</a>, <a href="#rfc.xref.header.user-agent.3">10.1</a></li>3718 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.iref.u.1"><b>9.10</b></a>, <a href="#rfc.xref.header.user-agent.2">10.3</a>, <a href="#rfc.xref.header.user-agent.3">11.1</a></li> 3513 3719 </ul> 3514 3720 </li> -
draft-ietf-httpbis/latest/p2-semantics.xml
r1435 r1436 33 33 <!ENTITY intermediaries "<xref target='Part1' x:rel='#intermediaries' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 34 34 <!ENTITY chunked-encoding "<xref target='Part1' x:rel='#chunked.encoding' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 35 <!ENTITY full-date "<xref target='Part1' x:rel='#date.time.formats.full.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">36 35 <!ENTITY http-url "<xref target='Part1' x:rel='#http-url' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 37 36 <!ENTITY http-version "<xref target='Part1' x:rel='#http.version' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 361 360 <x:anchor-alias value="absolute-URI"/> 362 361 <x:anchor-alias value="comment"/> 363 <x:anchor-alias value="HTTP-date"/>364 362 <x:anchor-alias value="partial-URI"/> 365 363 <x:anchor-alias value="product"/> … … 371 369 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in &uri;> 372 370 <x:ref>comment</x:ref> = <comment, defined in &header-fields;> 373 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in &full-date;>374 371 <x:ref>partial-URI</x:ref> = <partial-URI, defined in &uri;> 375 372 <x:ref>product</x:ref> = <product, defined in &product-tokens;> … … 594 591 <c>Age</c> <c>&header-age;</c> 595 592 <c>Allow</c> <c><xref target="header.allow"/></c> 593 <c>Date</c> <c><xref target="header.date"/></c> 596 594 <c>ETag</c> <c>&header-etag;</c> 597 595 <c>Location</c> <c><xref target="header.location"/></c> … … 2280 2278 2281 2279 2280 <section title="Date/Time Formats" anchor="http.date"> 2281 <x:anchor-alias value="HTTP-date"/> 2282 <t> 2283 HTTP applications have historically allowed three different formats 2284 for date/time stamps. However, the preferred format is a fixed-length subset 2285 of that defined by <xref target="RFC1123"/>: 2286 </t> 2287 <figure><artwork type="example" x:indent-with=" "> 2288 Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 2289 </artwork></figure> 2290 <t> 2291 The other formats are described here only for compatibility with obsolete 2292 implementations. 2293 </t> 2294 <figure><artwork type="example" x:indent-with=" "> 2295 Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 2296 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format 2297 </artwork></figure> 2298 <t> 2299 HTTP/1.1 clients and servers that parse a date value &MUST; accept 2300 all three formats (for compatibility with HTTP/1.0), though they &MUST; 2301 only generate the RFC 1123 format for representing HTTP-date values 2302 in header fields. 2303 </t> 2304 <t> 2305 All HTTP date/time stamps &MUST; be represented in Greenwich Mean Time 2306 (GMT), without exception. For the purposes of HTTP, GMT is exactly 2307 equal to UTC (Coordinated Universal Time). This is indicated in the 2308 first two formats by the inclusion of "GMT" as the three-letter 2309 abbreviation for time zone, and &MUST; be assumed when reading the 2310 asctime format. HTTP-date is case sensitive and &MUST-NOT; include 2311 additional whitespace beyond that specifically included as SP in the 2312 grammar. 2313 </t> 2314 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="HTTP-date"/> 2315 <x:ref>HTTP-date</x:ref> = <x:ref>rfc1123-date</x:ref> / <x:ref>obs-date</x:ref> 2316 </artwork></figure> 2317 <t anchor="preferred.date.format"> 2318 <x:anchor-alias value="rfc1123-date"/> 2319 <x:anchor-alias value="time-of-day"/> 2320 <x:anchor-alias value="hour"/> 2321 <x:anchor-alias value="minute"/> 2322 <x:anchor-alias value="second"/> 2323 <x:anchor-alias value="day-name"/> 2324 <x:anchor-alias value="day"/> 2325 <x:anchor-alias value="month"/> 2326 <x:anchor-alias value="year"/> 2327 <x:anchor-alias value="GMT"/> 2328 Preferred format: 2329 </t> 2330 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="rfc1123-date"/><iref primary="true" item="Grammar" subitem="date1"/><iref primary="true" item="Grammar" subitem="time-of-day"/><iref primary="true" item="Grammar" subitem="hour"/><iref primary="true" item="Grammar" subitem="minute"/><iref primary="true" item="Grammar" subitem="second"/><iref primary="true" item="Grammar" subitem="day-name"/><iref primary="true" item="Grammar" subitem="day-name-l"/><iref primary="true" item="Grammar" subitem="day"/><iref primary="true" item="Grammar" subitem="month"/><iref primary="true" item="Grammar" subitem="year"/><iref primary="true" item="Grammar" subitem="GMT"/> 2331 <x:ref>rfc1123-date</x:ref> = <x:ref>day-name</x:ref> "," <x:ref>SP</x:ref> date1 <x:ref>SP</x:ref> <x:ref>time-of-day</x:ref> <x:ref>SP</x:ref> <x:ref>GMT</x:ref> 2332 ; fixed length subset of the format defined in 2333 ; <xref target="RFC1123" x:fmt="of" x:sec="5.2.14"/> 2334 2335 <x:ref>day-name</x:ref> = <x:abnf-char-sequence>"Mon"</x:abnf-char-sequence> ; "Mon", case-sensitive 2336 / <x:abnf-char-sequence>"Tue"</x:abnf-char-sequence> ; "Tue", case-sensitive 2337 / <x:abnf-char-sequence>"Wed"</x:abnf-char-sequence> ; "Wed", case-sensitive 2338 / <x:abnf-char-sequence>"Thu"</x:abnf-char-sequence> ; "Thu", case-sensitive 2339 / <x:abnf-char-sequence>"Fri"</x:abnf-char-sequence> ; "Fri", case-sensitive 2340 / <x:abnf-char-sequence>"Sat"</x:abnf-char-sequence> ; "Sat", case-sensitive 2341 / <x:abnf-char-sequence>"Sun"</x:abnf-char-sequence> ; "Sun", case-sensitive 2342 2343 <x:ref>date1</x:ref> = <x:ref>day</x:ref> <x:ref>SP</x:ref> <x:ref>month</x:ref> <x:ref>SP</x:ref> <x:ref>year</x:ref> 2344 ; e.g., 02 Jun 1982 2345 2346 <x:ref>day</x:ref> = 2<x:ref>DIGIT</x:ref> 2347 <x:ref>month</x:ref> = <x:abnf-char-sequence>"Jan"</x:abnf-char-sequence> ; "Jan", case-sensitive 2348 / <x:abnf-char-sequence>"Feb"</x:abnf-char-sequence> ; "Feb", case-sensitive 2349 / <x:abnf-char-sequence>"Mar"</x:abnf-char-sequence> ; "Mar", case-sensitive 2350 / <x:abnf-char-sequence>"Apr"</x:abnf-char-sequence> ; "Apr", case-sensitive 2351 / <x:abnf-char-sequence>"May"</x:abnf-char-sequence> ; "May", case-sensitive 2352 / <x:abnf-char-sequence>"Jun"</x:abnf-char-sequence> ; "Jun", case-sensitive 2353 / <x:abnf-char-sequence>"Jul"</x:abnf-char-sequence> ; "Jul", case-sensitive 2354 / <x:abnf-char-sequence>"Aug"</x:abnf-char-sequence> ; "Aug", case-sensitive 2355 / <x:abnf-char-sequence>"Sep"</x:abnf-char-sequence> ; "Sep", case-sensitive 2356 / <x:abnf-char-sequence>"Oct"</x:abnf-char-sequence> ; "Oct", case-sensitive 2357 / <x:abnf-char-sequence>"Nov"</x:abnf-char-sequence> ; "Nov", case-sensitive 2358 / <x:abnf-char-sequence>"Dec"</x:abnf-char-sequence> ; "Dec", case-sensitive 2359 <x:ref>year</x:ref> = 4<x:ref>DIGIT</x:ref> 2360 2361 <x:ref>GMT</x:ref> = <x:abnf-char-sequence>"GMT"</x:abnf-char-sequence> ; "GMT", case-sensitive 2362 2363 <x:ref>time-of-day</x:ref> = <x:ref>hour</x:ref> ":" <x:ref>minute</x:ref> ":" <x:ref>second</x:ref> 2364 ; 00:00:00 - 23:59:59 2365 2366 <x:ref>hour</x:ref> = 2<x:ref>DIGIT</x:ref> 2367 <x:ref>minute</x:ref> = 2<x:ref>DIGIT</x:ref> 2368 <x:ref>second</x:ref> = 2<x:ref>DIGIT</x:ref> 2369 </artwork></figure> 2370 <t> 2371 The semantics of <x:ref>day-name</x:ref>, <x:ref>day</x:ref>, 2372 <x:ref>month</x:ref>, <x:ref>year</x:ref>, and <x:ref>time-of-day</x:ref> are the 2373 same as those defined for the RFC 5322 constructs 2374 with the corresponding name (<xref target="RFC5322" x:fmt="," x:sec="3.3"/>). 2375 </t> 2376 <t anchor="obsolete.date.formats"> 2377 <x:anchor-alias value="obs-date"/> 2378 <x:anchor-alias value="rfc850-date"/> 2379 <x:anchor-alias value="asctime-date"/> 2380 <x:anchor-alias value="date1"/> 2381 <x:anchor-alias value="date2"/> 2382 <x:anchor-alias value="date3"/> 2383 <x:anchor-alias value="rfc1123-date"/> 2384 <x:anchor-alias value="day-name-l"/> 2385 Obsolete formats: 2386 </t> 2387 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="obs-date"/> 2388 <x:ref>obs-date</x:ref> = <x:ref>rfc850-date</x:ref> / <x:ref>asctime-date</x:ref> 2389 </artwork></figure> 2390 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="rfc850-date"/> 2391 <x:ref>rfc850-date</x:ref> = <x:ref>day-name-l</x:ref> "," <x:ref>SP</x:ref> <x:ref>date2</x:ref> <x:ref>SP</x:ref> <x:ref>time-of-day</x:ref> <x:ref>SP</x:ref> <x:ref>GMT</x:ref> 2392 <x:ref>date2</x:ref> = <x:ref>day</x:ref> "-" <x:ref>month</x:ref> "-" 2<x:ref>DIGIT</x:ref> 2393 ; day-month-year (e.g., 02-Jun-82) 2394 2395 <x:ref>day-name-l</x:ref> = <x:abnf-char-sequence>"Monday"</x:abnf-char-sequence> ; "Monday", case-sensitive 2396 / <x:abnf-char-sequence>"Tuesday"</x:abnf-char-sequence> ; "Tuesday", case-sensitive 2397 / <x:abnf-char-sequence>"Wednesday"</x:abnf-char-sequence> ; "Wednesday", case-sensitive 2398 / <x:abnf-char-sequence>"Thursday"</x:abnf-char-sequence> ; "Thursday", case-sensitive 2399 / <x:abnf-char-sequence>"Friday"</x:abnf-char-sequence> ; "Friday", case-sensitive 2400 / <x:abnf-char-sequence>"Saturday"</x:abnf-char-sequence> ; "Saturday", case-sensitive 2401 / <x:abnf-char-sequence>"Sunday"</x:abnf-char-sequence> ; "Sunday", case-sensitive 2402 </artwork></figure> 2403 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="asctime-date"/> 2404 <x:ref>asctime-date</x:ref> = <x:ref>day-name</x:ref> <x:ref>SP</x:ref> <x:ref>date3</x:ref> <x:ref>SP</x:ref> <x:ref>time-of-day</x:ref> <x:ref>SP</x:ref> <x:ref>year</x:ref> 2405 <x:ref>date3</x:ref> = <x:ref>month</x:ref> <x:ref>SP</x:ref> ( 2<x:ref>DIGIT</x:ref> / ( <x:ref>SP</x:ref> 1<x:ref>DIGIT</x:ref> )) 2406 ; month day (e.g., Jun 2) 2407 </artwork></figure> 2408 <x:note> 2409 <t> 2410 <x:h>Note:</x:h> Recipients of date values are encouraged to be robust in 2411 accepting date values that might have been sent by non-HTTP 2412 applications, as is sometimes the case when retrieving or posting 2413 messages via proxies/gateways to SMTP or NNTP. 2414 </t> 2415 </x:note> 2416 <x:note> 2417 <t> 2418 <x:h>Note:</x:h> HTTP requirements for the date/time stamp format apply only 2419 to their usage within the protocol stream. Clients and servers are 2420 not required to use these formats for user presentation, request 2421 logging, etc. 2422 </t> 2423 </x:note> 2424 </section> 2425 2426 2282 2427 <section title="Header Field Definitions" anchor="header.field.definitions"> 2283 2428 <t> … … 2312 2457 understand all the methods specified in order to handle them according to 2313 2458 the generic message handling rules. 2459 </t> 2460 </section> 2461 2462 <section title="Date" anchor="header.date"> 2463 <iref primary="true" item="Date header field" x:for-anchor=""/> 2464 <iref primary="true" item="Header Fields" subitem="Date" x:for-anchor=""/> 2465 <x:anchor-alias value="Date"/> 2466 <t> 2467 The "Date" header field represents the date and time at which 2468 the message was originated, having the same semantics as the Origination 2469 Date Field (orig-date) defined in <xref target="RFC5322" x:fmt="of" x:sec="3.6.1"/>. 2470 The field value is an HTTP-date, as defined in <xref target="http.date"/>; 2471 it &MUST; be sent in rfc1123-date format. 2472 </t> 2473 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Date"/> 2474 <x:ref>Date</x:ref> = <x:ref>HTTP-date</x:ref> 2475 </artwork></figure> 2476 <t> 2477 An example is 2478 </t> 2479 <figure><artwork type="example"> 2480 Date: Tue, 15 Nov 1994 08:12:31 GMT 2481 </artwork></figure> 2482 <t> 2483 Origin servers &MUST; include a Date header field in all responses, 2484 except in these cases: 2485 <list style="numbers"> 2486 <t>If the response status code is 100 (Continue) or 101 (Switching 2487 Protocols), the response &MAY; include a Date header field, at 2488 the server's option.</t> 2489 2490 <t>If the response status code conveys a server error, e.g., 500 2491 (Internal Server Error) or 503 (Service Unavailable), and it is 2492 inconvenient or impossible to generate a valid Date.</t> 2493 2494 <t>If the server does not have a clock that can provide a 2495 reasonable approximation of the current time, its responses 2496 &MUST-NOT; include a Date header field.</t> 2497 </list> 2498 </t> 2499 <t> 2500 A received message that does not have a Date header field &MUST; be 2501 assigned one by the recipient if the message will be cached by that 2502 recipient. 2503 </t> 2504 <t> 2505 Clients can use the Date header field as well; in order to keep request 2506 messages small, they are advised not to include it when it doesn't convey 2507 any useful information (as it is usually the case for requests that do not 2508 contain a payload). 2509 </t> 2510 <t> 2511 The HTTP-date sent in a Date header field &SHOULD-NOT; represent a date and 2512 time subsequent to the generation of the message. It &SHOULD; represent 2513 the best available approximation of the date and time of message 2514 generation, unless the implementation has no means of generating a 2515 reasonably accurate date and time. In theory, the date ought to 2516 represent the moment just before the payload is generated. In 2517 practice, the date can be generated at any time during the message 2518 origination without affecting its semantic value. 2314 2519 </t> 2315 2520 </section> … … 2955 3160 <c> 2956 3161 <xref target="header.allow"/> 3162 </c> 3163 <c>Date</c> 3164 <c>http</c> 3165 <c>standard</c> 3166 <c> 3167 <xref target="header.date"/> 2957 3168 </c> 2958 3169 <c>Expect</c> … … 3484 3695 <references title="Informative References"> 3485 3696 3697 <reference anchor="RFC1123"> 3698 <front> 3699 <title>Requirements for Internet Hosts - Application and Support</title> 3700 <author initials="R." surname="Braden" fullname="Robert Braden"> 3701 <organization>University of Southern California (USC), Information Sciences Institute</organization> 3702 <address><email>Braden@ISI.EDU</email></address> 3703 </author> 3704 <date month="October" year="1989"/> 3705 </front> 3706 <seriesInfo name="STD" value="3"/> 3707 <seriesInfo name="RFC" value="1123"/> 3708 </reference> 3709 3486 3710 <reference anchor="RFC1945"> 3487 3711 <front> … … 3754 3978 <x:ref>Allow</x:ref> = [ ( "," / Method ) *( OWS "," [ OWS Method ] ) ] 3755 3979 3980 <x:ref>Date</x:ref> = HTTP-date 3981 3756 3982 <x:ref>Expect</x:ref> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] ) 3757 3983 3758 3984 <x:ref>From</x:ref> = mailbox 3759 3985 3760 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in [Part1], Section 5.1> 3986 <x:ref>GMT</x:ref> = %x47.4D.54 ; GMT 3987 3988 <x:ref>HTTP-date</x:ref> = rfc1123-date / obs-date 3761 3989 3762 3990 <x:ref>Location</x:ref> = URI-reference … … 3779 4007 3780 4008 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in [Part1], Section 2.7> 4009 <x:ref>asctime-date</x:ref> = day-name SP date3 SP time-of-day SP year 3781 4010 3782 4011 <x:ref>comment</x:ref> = <comment, defined in [Part1], Section 3.2> 3783 4012 4013 <x:ref>date1</x:ref> = day SP month SP year 4014 <x:ref>date2</x:ref> = day "-" month "-" 2DIGIT 4015 <x:ref>date3</x:ref> = month SP ( 2DIGIT / ( SP DIGIT ) ) 4016 <x:ref>day</x:ref> = 2DIGIT 4017 <x:ref>day-name</x:ref> = %x4D.6F.6E ; Mon 4018 / %x54.75.65 ; Tue 4019 / %x57.65.64 ; Wed 4020 / %x54.68.75 ; Thu 4021 / %x46.72.69 ; Fri 4022 / %x53.61.74 ; Sat 4023 / %x53.75.6E ; Sun 4024 <x:ref>day-name-l</x:ref> = %x4D.6F.6E.64.61.79 ; Monday 4025 / %x54.75.65.73.64.61.79 ; Tuesday 4026 / %x57.65.64.6E.65.73.64.61.79 ; Wednesday 4027 / %x54.68.75.72.73.64.61.79 ; Thursday 4028 / %x46.72.69.64.61.79 ; Friday 4029 / %x53.61.74.75.72.64.61.79 ; Saturday 4030 / %x53.75.6E.64.61.79 ; Sunday 3784 4031 <x:ref>delta-seconds</x:ref> = 1*DIGIT 3785 4032 … … 3789 4036 *expect-params ] 3790 4037 4038 <x:ref>hour</x:ref> = 2DIGIT 4039 3791 4040 <x:ref>mailbox</x:ref> = <mailbox, defined in [RFC5322], Section 3.4> 3792 4041 <x:ref>minute</x:ref> = 2DIGIT 4042 <x:ref>month</x:ref> = %x4A.61.6E ; Jan 4043 / %x46.65.62 ; Feb 4044 / %x4D.61.72 ; Mar 4045 / %x41.70.72 ; Apr 4046 / %x4D.61.79 ; May 4047 / %x4A.75.6E ; Jun 4048 / %x4A.75.6C ; Jul 4049 / %x41.75.67 ; Aug 4050 / %x53.65.70 ; Sep 4051 / %x4F.63.74 ; Oct 4052 / %x4E.6F.76 ; Nov 4053 / %x44.65.63 ; Dec 4054 4055 <x:ref>obs-date</x:ref> = rfc850-date / asctime-date 3793 4056 <x:ref>obs-text</x:ref> = <obs-text, defined in [Part1], Section 1.2.2> 3794 4057 3795 4058 <x:ref>partial-URI</x:ref> = <partial-URI, defined in [Part1], Section 2.7> 3796 <x:ref>product</x:ref> = <product, defined in [Part1], Section 5. 3>4059 <x:ref>product</x:ref> = <product, defined in [Part1], Section 5.2> 3797 4060 3798 4061 <x:ref>quoted-string</x:ref> = <quoted-string, defined in [Part1], Section 3.2.3> 3799 4062 4063 <x:ref>rfc1123-date</x:ref> = day-name "," SP date1 SP time-of-day SP GMT 4064 <x:ref>rfc850-date</x:ref> = day-name-l "," SP date2 SP time-of-day SP GMT 4065 4066 <x:ref>second</x:ref> = 2DIGIT 4067 4068 <x:ref>time-of-day</x:ref> = hour ":" minute ":" second 3800 4069 <x:ref>token</x:ref> = <token, defined in [Part1], Section 3.2.3> 4070 4071 <x:ref>year</x:ref> = 4DIGIT 3801 4072 </artwork> 3802 4073 </figure> 3803 4074 <figure><preamble>ABNF diagnostics:</preamble><artwork type="inline"> 3804 4075 ; Allow defined but not used 4076 ; Date defined but not used 3805 4077 ; Expect defined but not used 3806 4078 ; From defined but not used -
draft-ietf-httpbis/latest/p3-payload.xml
r1426 r1436 31 31 <!ENTITY message-body "<xref target='Part1' x:rel='#message.body' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 32 32 <!ENTITY multipart-byteranges "<xref target='Part5' x:rel='#internet.media.type.multipart.byteranges' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 33 <!ENTITY full-date "<xref target='Part1' x:rel='#date.time.formats.full.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">33 <!ENTITY http-date "<xref target='Part2' x:rel='#http.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 34 34 <!ENTITY qvalue "<xref target='Part1' x:rel='#quality.values' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 35 35 <!ENTITY uri "<xref target='Part1' x:rel='#uri' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 2416 2416 <section title="Conversion of Date Formats" anchor="conversion.of.date.formats"> 2417 2417 <t> 2418 HTTP/1.1 uses a restricted set of date formats (& full-date;) to2418 HTTP/1.1 uses a restricted set of date formats (&http-date;) to 2419 2419 simplify the process of date comparison. Proxies and gateways from 2420 2420 other protocols &SHOULD; ensure that any Date header field present in a … … 2583 2583 <x:ref>partial-URI</x:ref> = <partial-URI, defined in [Part1], Section 2.7> 2584 2584 2585 <x:ref>qvalue</x:ref> = <qvalue, defined in [Part1], Section 6.4>2585 <x:ref>qvalue</x:ref> = <qvalue, defined in [Part1], Section 5.3> 2586 2586 2587 2587 <x:ref>subtype</x:ref> = token -
draft-ietf-httpbis/latest/p4-conditional.html
r1434 r1436 641 641 character). 642 642 </p> 643 <p id="rfc.section.1.2.p.3">The ABNF rules below are defined in <a href="#Part1" id="rfc.xref.Part1.2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> :643 <p id="rfc.section.1.2.p.3">The ABNF rules below are defined in <a href="#Part1" id="rfc.xref.Part1.2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> and <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>: 644 644 </p> 645 645 <div id="rfc.figure.u.1"></div><pre class="inline"> <a href="#notation" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.3"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#basic.rules" title="Basic Rules">Section 1.2.2</a>> 646 646 <a href="#notation" class="smpl">quoted-string</a> = <quoted-string, defined in <a href="#Part1" id="rfc.xref.Part1.4"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.rules" title="Common Field ABNF Rules">Section 3.2.3</a>> 647 <a href="#notation" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part 1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#date.time.formats.full.date" title="Date/Time Formats: Full Date">Section 6.1</a>>647 <a href="#notation" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 8</a>> 648 648 </pre><div id="rfc.iref.m.1"></div> 649 649 <div id="rfc.iref.v.1"></div> … … 724 724 clock, then the origin server <em class="bcp14">MUST</em> replace that value with the message origination date. This prevents a future modification date from having an adverse impact 725 725 on cache validation. 726 </p> 727 <p id="rfc.section.2.2.1.p.5">An origin server without a clock <em class="bcp14">MUST NOT</em> assign Last-Modified values to a response unless these values were associated with the resource by some other system or user 728 with a reliable clock. 726 729 </p> 727 730 <h3 id="rfc.section.2.2.2"><a href="#rfc.section.2.2.2">2.2.2</a> <a id="lastmod.comparison" href="#lastmod.comparison">Comparison</a></h3> … … 879 882 <p> <b>Note:</b> Content codings are a property of the representation, so therefore an entity-tag of an encoded representation must be distinct 880 883 from an unencoded representation to prevent conflicts during cache updates and range requests. In contrast, transfer codings 881 (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) apply only during message transfer and do not require distinct entity-tags.884 (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 5.1</a> of <a href="#Part1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) apply only during message transfer and do not require distinct entity-tags. 882 885 </p> 883 886 </div> … … 1072 1075 as if it were the payload of a 200 response. The 304 response <em class="bcp14">MUST NOT</em> contain a message-body, and thus is always terminated by the first empty line after the header fields. 1073 1076 </p> 1074 <p id="rfc.section.4.1.p.2">A 304 response <em class="bcp14">MUST</em> include a Date header field (<a href="p1-messaging.html#header.date" title="Date">Section 9.3</a> of <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) unless its omission is required by <a href="p1-messaging.html#clockless.origin.server.operation" title="Clockless Origin Server Operation">Section 9.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.8"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. If a 200 response to the same request would have included any of the header fields Cache-Control, Content-Location, ETag, 1075 Expires, Last-Modified, or Vary, then those same header fields <em class="bcp14">MUST</em> be sent in a 304 response. 1077 <p id="rfc.section.4.1.p.2">A 304 response <em class="bcp14">MUST</em> include a Date header field (<a href="p2-semantics.html#header.date" title="Date">Section 9.2</a> of <a href="#Part2" id="rfc.xref.Part2.3"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) unless the origin server does not have a clock that can provide a reasonable approximation of the current time. If a 200 1078 response to the same request would have included any of the header fields Cache-Control, Content-Location, ETag, Expires, 1079 Last-Modified, or Vary, then those same header fields <em class="bcp14">MUST</em> be sent in a 304 response. 1076 1080 </p> 1077 1081 <p id="rfc.section.4.1.p.3">Since the goal of a 304 response is to minimize information transfer when the recipient already has one or more cached representations, … … 1184 1188 <p id="rfc.section.5.2.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p> 1185 1189 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 1186 <p id="rfc.section.6.p.1">No additional security considerations have been identified beyond those applicable to HTTP in general <a href="#Part1" id="rfc.xref.Part1. 9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.1190 <p id="rfc.section.6.p.1">No additional security considerations have been identified beyond those applicable to HTTP in general <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 1187 1191 </p> 1188 1192 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 1189 <p id="rfc.section.7.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 1 2</a> of <a href="#Part1" id="rfc.xref.Part1.10"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.1193 <p id="rfc.section.7.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 11</a> of <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 1190 1194 </p> 1191 1195 <h1 id="rfc.references"><a id="rfc.section.8" href="#rfc.section.8">8.</a> References … … 1193 1197 <h2 id="rfc.references.1"><a href="#rfc.section.8.1" id="rfc.section.8.1">8.1</a> Normative References 1194 1198 </h2> 1195 <table> 1199 <table> 1196 1200 <tr> 1197 1201 <td class="reference"><b id="Part1">[Part1]</b></td> 1198 1202 <td class="top"><a href="mailto:fielding@gbiv.com" title="Adobe Systems Incorporated">Fielding, R., Ed.</a>, <a href="mailto:jg@freedesktop.org" title="Alcatel-Lucent Bell Labs">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-latest">HTTP/1.1, part 1: URIs, Connections, and Message Parsing</a>”, Internet-Draft draft-ietf-httpbis-p1-messaging-latest (work in progress), September 2011. 1203 </td> 1204 </tr> 1205 <tr> 1206 <td class="reference"><b id="Part2">[Part2]</b></td> 1207 <td class="top"><a href="mailto:fielding@gbiv.com" title="Adobe Systems Incorporated">Fielding, R., Ed.</a>, <a href="mailto:jg@freedesktop.org" title="Alcatel-Lucent Bell Labs">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-latest">HTTP/1.1, part 2: Message Semantics</a>”, Internet-Draft draft-ietf-httpbis-p2-semantics-latest (work in progress), September 2011. 1199 1208 </td> 1200 1209 </tr> … … 1270 1279 <div id="rfc.figure.u.17"></div> <pre class="inline"><a href="#header.etag" class="smpl">ETag</a> = entity-tag 1271 1280 1272 <a href="#notation" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part 1], Section 6.1>1281 <a href="#notation" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part2], Section 8> 1273 1282 1274 1283 <a href="#header.if-match" class="smpl">If-Match</a> = "*" / ( *( "," OWS ) entity-tag *( OWS "," [ OWS … … 1475 1484 </li> 1476 1485 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 1477 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1.2</a>, <a href="#rfc.xref.Part1.2">1.2</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">1.2</a>, <a href="#rfc.xref.Part1.5"> 1.2</a>, <a href="#rfc.xref.Part1.6">2.3.3</a>, <a href="#rfc.xref.Part1.7">4.1</a>, <a href="#rfc.xref.Part1.8">4.1</a>, <a href="#rfc.xref.Part1.9">6</a>, <a href="#rfc.xref.Part1.10">7</a>, <a href="#Part1"><b>8.1</b></a><ul>1486 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1.2</a>, <a href="#rfc.xref.Part1.2">1.2</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">1.2</a>, <a href="#rfc.xref.Part1.5">2.3.3</a>, <a href="#rfc.xref.Part1.6">6</a>, <a href="#rfc.xref.Part1.7">7</a>, <a href="#Part1"><b>8.1</b></a><ul> 1478 1487 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.1">1.2</a></li> 1479 1488 <li><em>Section 1.2.2</em> <a href="#rfc.xref.Part1.3">1.2</a></li> 1480 1489 <li><em>Section 3.2.3</em> <a href="#rfc.xref.Part1.4">1.2</a></li> 1481 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.5">1.2</a></li> 1482 <li><em>Section 6.2</em> <a href="#rfc.xref.Part1.6">2.3.3</a></li> 1483 <li><em>Section 9.3</em> <a href="#rfc.xref.Part1.7">4.1</a></li> 1484 <li><em>Section 9.3.1</em> <a href="#rfc.xref.Part1.8">4.1</a></li> 1485 <li><em>Section 12</em> <a href="#rfc.xref.Part1.10">7</a></li> 1490 <li><em>Section 5.1</em> <a href="#rfc.xref.Part1.5">2.3.3</a></li> 1491 <li><em>Section 11</em> <a href="#rfc.xref.Part1.7">7</a></li> 1492 </ul> 1493 </li> 1494 <li><em>Part2</em> <a href="#rfc.xref.Part2.1">1.2</a>, <a href="#rfc.xref.Part2.2">1.2</a>, <a href="#rfc.xref.Part2.3">4.1</a>, <a href="#Part2"><b>8.1</b></a><ul> 1495 <li><em>Section 8</em> <a href="#rfc.xref.Part2.2">1.2</a></li> 1496 <li><em>Section 9.2</em> <a href="#rfc.xref.Part2.3">4.1</a></li> 1486 1497 </ul> 1487 1498 </li> -
draft-ietf-httpbis/latest/p4-conditional.xml
r1426 r1436 20 20 <!ENTITY basic-rules "<xref target='Part1' x:rel='#basic.rules' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 21 21 <!ENTITY field-rules "<xref target='Part1' x:rel='#field.rules' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 22 <!ENTITY header-date "<xref target='Part 1' x:rel='#header.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">22 <!ENTITY header-date "<xref target='Part2' x:rel='#header.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 23 23 <!ENTITY messaging "<xref target='Part1' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 24 24 <!ENTITY caching "<xref target='Part6' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 27 27 <!ENTITY header-range "<xref target='Part5' x:rel='#header.range' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 28 28 <!ENTITY header-vary "<xref target='Part6' x:rel='#header.vary' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 29 <!ENTITY clockless "<xref target='Part1' x:rel='#clockless.origin.server.operation' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 30 <!ENTITY full-date "<xref target='Part1' x:rel='#date.time.formats.full.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 29 <!ENTITY http-date "<xref target='Part2' x:rel='#http.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 31 30 <!ENTITY transfer-codings "<xref target='Part1' x:rel='#transfer.codings' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 32 31 <!ENTITY content-negotiation "<xref target='Part3' x:rel='#content.negotiation' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 299 298 </t> 300 299 <t> 301 The ABNF rules below are defined in <xref target="Part1"/>: 300 The ABNF rules below are defined in <xref target="Part1"/> and 301 <xref target="Part2"/>: 302 302 </t> 303 303 <figure><artwork type="abnf2616"> 304 304 <x:ref>OWS</x:ref> = <OWS, defined in &basic-rules;> 305 305 <x:ref>quoted-string</x:ref> = <quoted-string, defined in &field-rules;> 306 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in & full-date;>306 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in &http-date;> 307 307 </artwork></figure> 308 308 </section> … … 464 464 value with the message origination date. This prevents a future 465 465 modification date from having an adverse impact on cache validation. 466 </t> 467 <t> 468 An origin server without a clock &MUST-NOT; assign Last-Modified 469 values to a response unless these values were associated 470 with the resource by some other system or user with a reliable clock. 466 471 </t> 467 472 </section> … … 1053 1058 <t> 1054 1059 A 304 response &MUST; include a Date header field (&header-date;) 1055 unless its omission is required by &clockless;. If a 200 response 1060 unless the origin server does not have a clock that can provide a 1061 reasonable approximation of the current time. If a 200 response 1056 1062 to the same request would have included any of the header fields 1057 1063 Cache-Control, Content-Location, ETag, Expires, Last-Modified, or … … 1244 1250 </reference> 1245 1251 1252 <reference anchor="Part2"> 1253 <front> 1254 <title abbrev="HTTP/1.1">HTTP/1.1, part 2: Message Semantics</title> 1255 <author initials="R." surname="Fielding" fullname="Roy T. Fielding" role="editor"> 1256 <organization abbrev="Adobe">Adobe Systems Incorporated</organization> 1257 <address><email>fielding@gbiv.com</email></address> 1258 </author> 1259 <author initials="J." surname="Gettys" fullname="Jim Gettys"> 1260 <organization abbrev="Alcatel-Lucent">Alcatel-Lucent Bell Labs</organization> 1261 <address><email>jg@freedesktop.org</email></address> 1262 </author> 1263 <author initials="J." surname="Mogul" fullname="Jeffrey C. Mogul"> 1264 <organization abbrev="HP">Hewlett-Packard Company</organization> 1265 <address><email>JeffMogul@acm.org</email></address> 1266 </author> 1267 <author initials="H." surname="Frystyk" fullname="Henrik Frystyk Nielsen"> 1268 <organization abbrev="Microsoft">Microsoft Corporation</organization> 1269 <address><email>henrikn@microsoft.com</email></address> 1270 </author> 1271 <author initials="L." surname="Masinter" fullname="Larry Masinter"> 1272 <organization abbrev="Adobe">Adobe Systems Incorporated</organization> 1273 <address><email>LMM@acm.org</email></address> 1274 </author> 1275 <author initials="P." surname="Leach" fullname="Paul J. Leach"> 1276 <organization abbrev="Microsoft">Microsoft Corporation</organization> 1277 <address><email>paulle@microsoft.com</email></address> 1278 </author> 1279 <author initials="T." surname="Berners-Lee" fullname="Tim Berners-Lee"> 1280 <organization abbrev="W3C/MIT">World Wide Web Consortium</organization> 1281 <address><email>timbl@w3.org</email></address> 1282 </author> 1283 <author initials="Y." surname="Lafon" fullname="Yves Lafon" role="editor"> 1284 <organization abbrev="W3C">World Wide Web Consortium</organization> 1285 <address><email>ylafon@w3.org</email></address> 1286 </author> 1287 <author initials="J. F." surname="Reschke" fullname="Julian F. Reschke" role="editor"> 1288 <organization abbrev="greenbytes">greenbytes GmbH</organization> 1289 <address><email>julian.reschke@greenbytes.de</email></address> 1290 </author> 1291 <date month="&ID-MONTH;" year="&ID-YEAR;"/> 1292 </front> 1293 <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-p2-semantics-&ID-VERSION;"/> 1294 <x:source href="p2-semantics.xml" basename="p2-semantics"/> 1295 </reference> 1296 1246 1297 <reference anchor="Part3"> 1247 1298 <front> … … 1508 1559 <x:ref>ETag</x:ref> = entity-tag 1509 1560 1510 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in [Part 1], Section 6.1>1561 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in [Part2], Section 8> 1511 1562 1512 1563 <x:ref>If-Match</x:ref> = "*" / ( *( "," OWS ) entity-tag *( OWS "," [ OWS … … 1537 1588 ; If-Unmodified-Since defined but not used 1538 1589 ; Last-Modified defined but not used 1539 </artwork></figure></section> 1590 </artwork></figure></section>he 1540 1591 <?ENDINC p4-conditional.abnf-appendix ?> 1541 1592 -
draft-ietf-httpbis/latest/p5-range.html
r1433 r1436 643 643 </p> 644 644 <h3 id="rfc.section.1.2.1"><a href="#rfc.section.1.2.1">1.2.1</a> <a id="core.rules" href="#core.rules">Core Rules</a></h3> 645 <p id="rfc.section.1.2.1.p.1">The core rules below are defined in <a href="#Part1" id="rfc.xref.Part1.2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> :645 <p id="rfc.section.1.2.1.p.1">The core rules below are defined in <a href="#Part1" id="rfc.xref.Part1.2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> and <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>: 646 646 </p> 647 647 <div id="rfc.figure.u.1"></div><pre class="inline"> <a href="#core.rules" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.3"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#basic.rules" title="Basic Rules">Section 1.2.2</a>> 648 648 <a href="#core.rules" class="smpl">token</a> = <token, defined in <a href="#Part1" id="rfc.xref.Part1.4"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.rules" title="Common Field ABNF Rules">Section 3.2.3</a>> 649 <a href="#core.rules" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part 1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#date.time.formats.full.date" title="Date/Time Formats: Full Date">Section 6.1</a>>649 <a href="#core.rules" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 8</a>> 650 650 </pre><h3 id="rfc.section.1.2.2"><a href="#rfc.section.1.2.2">1.2.2</a> <a id="abnf.dependencies" href="#abnf.dependencies">ABNF Rules defined in other Parts of the Specification</a></h3> 651 651 <p id="rfc.section.1.2.2.p.1">The ABNF rules below are defined in other parts:</p> … … 1046 1046 </p> 1047 1047 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 1048 <p id="rfc.section.8.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 1 2</a> of <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.1048 <p id="rfc.section.8.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 11</a> of <a href="#Part1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 1049 1049 </p> 1050 1050 <h1 id="rfc.references"><a id="rfc.section.9" href="#rfc.section.9">9.</a> References … … 1052 1052 <h2 id="rfc.references.1"><a href="#rfc.section.9.1" id="rfc.section.9.1">9.1</a> Normative References 1053 1053 </h2> 1054 <table> 1054 <table> 1055 1055 <tr> 1056 1056 <td class="reference"><b id="Part1">[Part1]</b></td> 1057 1057 <td class="top"><a href="mailto:fielding@gbiv.com" title="Adobe Systems Incorporated">Fielding, R., Ed.</a>, <a href="mailto:jg@freedesktop.org" title="Alcatel-Lucent Bell Labs">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-latest">HTTP/1.1, part 1: URIs, Connections, and Message Parsing</a>”, Internet-Draft draft-ietf-httpbis-p1-messaging-latest (work in progress), September 2011. 1058 </td> 1059 </tr> 1060 <tr> 1061 <td class="reference"><b id="Part2">[Part2]</b></td> 1062 <td class="top"><a href="mailto:fielding@gbiv.com" title="Adobe Systems Incorporated">Fielding, R., Ed.</a>, <a href="mailto:jg@freedesktop.org" title="Alcatel-Lucent Bell Labs">Gettys, J.</a>, <a href="mailto:JeffMogul@acm.org" title="Hewlett-Packard Company">Mogul, J.</a>, <a href="mailto:henrikn@microsoft.com" title="Microsoft Corporation">Frystyk, H.</a>, <a href="mailto:LMM@acm.org" title="Adobe Systems Incorporated">Masinter, L.</a>, <a href="mailto:paulle@microsoft.com" title="Microsoft Corporation">Leach, P.</a>, <a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:ylafon@w3.org" title="World Wide Web Consortium">Lafon, Y., Ed.</a>, and <a href="mailto:julian.reschke@greenbytes.de" title="greenbytes GmbH">J. Reschke, Ed.</a>, “<a href="http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-latest">HTTP/1.1, part 2: Message Semantics</a>”, Internet-Draft draft-ietf-httpbis-p2-semantics-latest (work in progress), September 2011. 1058 1063 </td> 1059 1064 </tr> … … 1230 1235 <a href="#header.content-range" class="smpl">Content-Range</a> = byte-content-range-spec / other-content-range-spec 1231 1236 1232 <a href="#core.rules" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part 1], Section 6.1>1237 <a href="#core.rules" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part2], Section 8> 1233 1238 1234 1239 <a href="#header.if-range" class="smpl">If-Range</a> = entity-tag / HTTP-date … … 1479 1484 </li> 1480 1485 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 1481 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1.2</a>, <a href="#rfc.xref.Part1.2">1.2.1</a>, <a href="#rfc.xref.Part1.3">1.2.1</a>, <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5"> 1.2.1</a>, <a href="#rfc.xref.Part1.6">8</a>, <a href="#Part1"><b>9.1</b></a><ul>1486 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1.2</a>, <a href="#rfc.xref.Part1.2">1.2.1</a>, <a href="#rfc.xref.Part1.3">1.2.1</a>, <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5">8</a>, <a href="#Part1"><b>9.1</b></a><ul> 1482 1487 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.1">1.2</a></li> 1483 1488 <li><em>Section 1.2.2</em> <a href="#rfc.xref.Part1.3">1.2.1</a></li> 1484 1489 <li><em>Section 3.2.3</em> <a href="#rfc.xref.Part1.4">1.2.1</a></li> 1485 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.5">1.2.1</a></li> 1486 <li><em>Section 12</em> <a href="#rfc.xref.Part1.6">8</a></li> 1490 <li><em>Section 11</em> <a href="#rfc.xref.Part1.5">8</a></li> 1491 </ul> 1492 </li> 1493 <li><em>Part2</em> <a href="#rfc.xref.Part2.1">1.2.1</a>, <a href="#rfc.xref.Part2.2">1.2.1</a>, <a href="#Part2"><b>9.1</b></a><ul> 1494 <li><em>Section 8</em> <a href="#rfc.xref.Part2.2">1.2.1</a></li> 1487 1495 </ul> 1488 1496 </li> -
draft-ietf-httpbis/latest/p5-range.xml
r1426 r1436 20 20 <!ENTITY basic-rules "<xref target='Part1' x:rel='#basic.rules' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 21 21 <!ENTITY field-rules "<xref target='Part1' x:rel='#field.rules' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 22 <!ENTITY full-date "<xref target='Part1' x:rel='#date.time.formats.full.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">22 <!ENTITY http-date "<xref target='Part2' x:rel='#http.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 23 23 <!ENTITY messaging "<xref target='Part1' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 24 24 <!ENTITY entity-tags "<xref target='Part4' x:rel='#header.etag' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 289 289 <x:anchor-alias value="HTTP-date"/> 290 290 <t> 291 The core rules below are defined in <xref target="Part1"/>: 291 The core rules below are defined in <xref target="Part1"/> and 292 <xref target="Part2"/>: 292 293 </t> 293 294 <figure><artwork type="abnf2616"> 294 295 <x:ref>OWS</x:ref> = <OWS, defined in &basic-rules;> 295 296 <x:ref>token</x:ref> = <token, defined in &field-rules;> 296 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in & full-date;>297 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in &http-date;> 297 298 </artwork></figure> 298 299 </section> … … 1065 1066 </reference> 1066 1067 1068 <reference anchor="Part2"> 1069 <front> 1070 <title abbrev="HTTP/1.1">HTTP/1.1, part 2: Message Semantics</title> 1071 <author initials="R." surname="Fielding" fullname="Roy T. Fielding" role="editor"> 1072 <organization abbrev="Adobe">Adobe Systems Incorporated</organization> 1073 <address><email>fielding@gbiv.com</email></address> 1074 </author> 1075 <author initials="J." surname="Gettys" fullname="Jim Gettys"> 1076 <organization abbrev="Alcatel-Lucent">Alcatel-Lucent Bell Labs</organization> 1077 <address><email>jg@freedesktop.org</email></address> 1078 </author> 1079 <author initials="J." surname="Mogul" fullname="Jeffrey C. Mogul"> 1080 <organization abbrev="HP">Hewlett-Packard Company</organization> 1081 <address><email>JeffMogul@acm.org</email></address> 1082 </author> 1083 <author initials="H." surname="Frystyk" fullname="Henrik Frystyk Nielsen"> 1084 <organization abbrev="Microsoft">Microsoft Corporation</organization> 1085 <address><email>henrikn@microsoft.com</email></address> 1086 </author> 1087 <author initials="L." surname="Masinter" fullname="Larry Masinter"> 1088 <organization abbrev="Adobe">Adobe Systems Incorporated</organization> 1089 <address><email>LMM@acm.org</email></address> 1090 </author> 1091 <author initials="P." surname="Leach" fullname="Paul J. Leach"> 1092 <organization abbrev="Microsoft">Microsoft Corporation</organization> 1093 <address><email>paulle@microsoft.com</email></address> 1094 </author> 1095 <author initials="T." surname="Berners-Lee" fullname="Tim Berners-Lee"> 1096 <organization abbrev="W3C/MIT">World Wide Web Consortium</organization> 1097 <address><email>timbl@w3.org</email></address> 1098 </author> 1099 <author initials="Y." surname="Lafon" fullname="Yves Lafon" role="editor"> 1100 <organization abbrev="W3C">World Wide Web Consortium</organization> 1101 <address><email>ylafon@w3.org</email></address> 1102 </author> 1103 <author initials="J. F." surname="Reschke" fullname="Julian F. Reschke" role="editor"> 1104 <organization abbrev="greenbytes">greenbytes GmbH</organization> 1105 <address><email>julian.reschke@greenbytes.de</email></address> 1106 </author> 1107 <date month="&ID-MONTH;" year="&ID-YEAR;"/> 1108 </front> 1109 <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-p2-semantics-&ID-VERSION;"/> 1110 <x:source href="p2-semantics.xml" basename="p2-semantics"/> 1111 </reference> 1112 1067 1113 <reference anchor="Part4"> 1068 1114 <front> … … 1415 1461 <x:ref>Content-Range</x:ref> = byte-content-range-spec / other-content-range-spec 1416 1462 1417 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in [Part 1], Section 6.1>1463 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in [Part2], Section 8> 1418 1464 1419 1465 <x:ref>If-Range</x:ref> = entity-tag / HTTP-date -
draft-ietf-httpbis/latest/p6-cache.html
r1434 r1436 748 748 <p id="rfc.section.1.4.2.p.1">The ABNF rules below are defined in other parts:</p> 749 749 <div id="rfc.figure.u.2"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">field-name</a> = <field-name, defined in <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a>> 750 <a href="#abnf.dependencies" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part 1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#date.time.formats.full.date" title="Date/Time Formats: Full Date">Section 6.1</a>>751 <a href="#abnf.dependencies" class="smpl">port</a> = <port, defined in <a href="#Part1" id="rfc.xref.Part1. 8"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>>752 <a href="#abnf.dependencies" class="smpl">pseudonym</a> = <pseudonym, defined in <a href="#Part1" id="rfc.xref.Part1. 9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#header.via" title="Via">Section 9.9</a>>753 <a href="#abnf.dependencies" class="smpl">uri-host</a> = <uri-host, defined in <a href="#Part1" id="rfc.xref.Part1. 10"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>>750 <a href="#abnf.dependencies" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 8</a>> 751 <a href="#abnf.dependencies" class="smpl">port</a> = <port, defined in <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 752 <a href="#abnf.dependencies" class="smpl">pseudonym</a> = <pseudonym, defined in <a href="#Part1" id="rfc.xref.Part1.8"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#header.via" title="Via">Section 8.8</a>> 753 <a href="#abnf.dependencies" class="smpl">uri-host</a> = <uri-host, defined in <a href="#Part1" id="rfc.xref.Part1.9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 754 754 </pre><h2 id="rfc.section.1.5"><a href="#rfc.section.1.5">1.5</a> <a id="delta-seconds" href="#delta-seconds">Delta Seconds</a></h2> 755 755 <p id="rfc.section.1.5.p.1">The delta-seconds rule specifies a non-negative integer, representing time in seconds.</p> … … 761 761 <div id="rfc.iref.c.5"></div> 762 762 <h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a> <a id="caching.overview" href="#caching.overview">Cache Operation</a></h1> 763 <p id="rfc.section.2.p.1">Proper cache operation preserves the semantics of HTTP transfers (<a href="#Part2" id="rfc.xref.Part2. 1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) while eliminating the transfer of information already held in the cache. Although caching is an entirely <em class="bcp14">OPTIONAL</em> feature of HTTP, we assume that reusing the cached response is desirable and that such reuse is the default behavior when763 <p id="rfc.section.2.p.1">Proper cache operation preserves the semantics of HTTP transfers (<a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) while eliminating the transfer of information already held in the cache. Although caching is an entirely <em class="bcp14">OPTIONAL</em> feature of HTTP, we assume that reusing the cached response is desirable and that such reuse is the default behavior when 764 764 no requirement or locally-desired configuration prevents it. Therefore, HTTP cache requirements are focused on preventing 765 765 a cache from either storing a non-reusable response or reusing a stored response inappropriately. … … 811 811 time, as such responses are not usually useful to store. However, caches are not prohibited from storing such responses. 812 812 </p> 813 <p id="rfc.section.2.1.p.5">A response message is considered complete when all of the octets indicated by the message framing (<a href="#Part1" id="rfc.xref.Part1.1 1"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) are received prior to the connection being closed. If the request is GET, the response status is 200 (OK), and the entire813 <p id="rfc.section.2.1.p.5">A response message is considered complete when all of the octets indicated by the message framing (<a href="#Part1" id="rfc.xref.Part1.10"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) are received prior to the connection being closed. If the request is GET, the response status is 200 (OK), and the entire 814 814 response header block has been received, a cache <em class="bcp14">MAY</em> store an incomplete response message-body if the cache entry is recorded as incomplete. Likewise, a 206 (Partial Content) 815 815 response <em class="bcp14">MAY</em> be stored as if it were an incomplete 200 (OK) cache entry. However, a cache <em class="bcp14">MUST NOT</em> store incomplete or partial content responses if it does not support the Range and Content-Range header fields or if it does … … 823 823 </p> 824 824 <ul> 825 <li>The presented effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and that of the stored response match, and825 <li>The presented effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.11"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and that of the stored response match, and 826 826 </li> 827 827 <li>the request method associated with the stored response allows it to be used for the presented request, and</li> … … 845 845 <p id="rfc.section.2.2.p.3">When a stored response is used to satisfy a request without validation, a cache <em class="bcp14">MUST</em> include a single Age header field (<a href="#header.age" id="rfc.xref.header.age.1" title="Age">Section 3.1</a>) in the response with a value equal to the stored response's current_age; see <a href="#age.calculations" title="Calculating Age">Section 2.3.2</a>. 846 846 </p> 847 <p id="rfc.section.2.2.p.4">A cache <em class="bcp14">MUST</em> write through requests with methods that are unsafe (<a href="p2-semantics.html#safe.methods" title="Safe Methods">Section 6.1.1</a> of <a href="#Part2" id="rfc.xref.Part2. 2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) to the origin server; i.e., a cache must not generate a reply to such a request before having forwarded the request and847 <p id="rfc.section.2.2.p.4">A cache <em class="bcp14">MUST</em> write through requests with methods that are unsafe (<a href="p2-semantics.html#safe.methods" title="Safe Methods">Section 6.1.1</a> of <a href="#Part2" id="rfc.xref.Part2.3"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) to the origin server; i.e., a cache must not generate a reply to such a request before having forwarded the request and 848 848 having received a corresponding response. 849 849 </p> … … 896 896 <h4 id="rfc.section.2.3.1.1"><a href="#rfc.section.2.3.1.1">2.3.1.1</a> <a id="heuristic.freshness" href="#heuristic.freshness">Calculating Heuristic Freshness</a></h4> 897 897 <p id="rfc.section.2.3.1.1.p.1">If no explicit expiration time is present in a stored response that has a status code whose definition allows heuristic freshness 898 to be used (including the following in <a href="p2-semantics.html#status.codes" title="Status Code Definitions">Section 7</a> of <a href="#Part2" id="rfc.xref.Part2. 3"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>: 200, 203, 206, 300, 301 and 410), a cache <em class="bcp14">MAY</em> calculate a heuristic expiration time. A cache <em class="bcp14">MUST NOT</em> use heuristics to determine freshness for responses with status codes that do not explicitly allow it.898 to be used (including the following in <a href="p2-semantics.html#status.codes" title="Status Code Definitions">Section 7</a> of <a href="#Part2" id="rfc.xref.Part2.4"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>: 200, 203, 206, 300, 301 and 410), a cache <em class="bcp14">MAY</em> calculate a heuristic expiration time. A cache <em class="bcp14">MUST NOT</em> use heuristics to determine freshness for responses with status codes that do not explicitly allow it. 899 899 </p> 900 900 <p id="rfc.section.2.3.1.1.p.2">When a heuristic is used to calculate freshness lifetime, a cache <em class="bcp14">SHOULD</em> attach a Warning header field with a 113 warn-code to the response if its current_age is more than 24 hours and such a warning … … 928 928 <li>HTTP/1.1 requires origin servers to send a Date header field, if possible, with every response, giving the time at which the 929 929 response was generated. The term "date_value" denotes the value of the Date header field, in a form appropriate for arithmetic 930 operations. See <a href="p 1-messaging.html#header.date" title="Date">Section 9.3</a> of <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for the definition of the Date header field, and for requirements regarding responses without it.930 operations. See <a href="p2-semantics.html#header.date" title="Date">Section 9.2</a> of <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a> for the definition of the Date header field, and for requirements regarding responses without it. 931 931 </li> 932 932 </ul> … … 1053 1053 </ul> 1054 1054 <h2 id="rfc.section.2.5"><a href="#rfc.section.2.5">2.5</a> <a id="invalidation.after.updates.or.deletions" href="#invalidation.after.updates.or.deletions">Request Methods that Invalidate</a></h2> 1055 <p id="rfc.section.2.5.p.1">Because unsafe request methods (<a href="p2-semantics.html#safe.methods" title="Safe Methods">Section 6.1.1</a> of <a href="#Part2" id="rfc.xref.Part2. 4"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) such as PUT, POST or DELETE have the potential for changing state on the origin server, intervening caches can use them1055 <p id="rfc.section.2.5.p.1">Because unsafe request methods (<a href="p2-semantics.html#safe.methods" title="Safe Methods">Section 6.1.1</a> of <a href="#Part2" id="rfc.xref.Part2.6"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) such as PUT, POST or DELETE have the potential for changing state on the origin server, intervening caches can use them 1056 1056 to keep their contents up-to-date. 1057 1057 </p> 1058 <p id="rfc.section.2.5.p.2">A cache <em class="bcp14">MUST</em> invalidate the effective Request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 4"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) as well as the URI(s) in the Location and Content-Location header fields (if present) when a non-error response to a request1058 <p id="rfc.section.2.5.p.2">A cache <em class="bcp14">MUST</em> invalidate the effective Request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) as well as the URI(s) in the Location and Content-Location header fields (if present) when a non-error response to a request 1059 1059 with an unsafe method is received. 1060 1060 </p> 1061 1061 <p id="rfc.section.2.5.p.3">However, a cache <em class="bcp14">MUST NOT</em> invalidate a URI from a Location or Content-Location header field if the host part of that URI differs from the host part 1062 in the effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). This helps prevent denial of service attacks.1063 </p> 1064 <p id="rfc.section.2.5.p.4">A cache <em class="bcp14">MUST</em> invalidate the effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) when it receives a non-error response to a request with a method whose safety is unknown.1062 in the effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). This helps prevent denial of service attacks. 1063 </p> 1064 <p id="rfc.section.2.5.p.4">A cache <em class="bcp14">MUST</em> invalidate the effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) when it receives a non-error response to a request with a method whose safety is unknown. 1065 1065 </p> 1066 1066 <p id="rfc.section.2.5.p.5">Here, a "non-error response" is one with a 2xx or 3xx status code. "Invalidate" means that the cache will either remove all … … 1089 1089 <ul> 1090 1090 <li>adding or removing whitespace, where allowed in the header field's syntax</li> 1091 <li>combining multiple header fields with the same field name (see <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.1 7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>)1091 <li>combining multiple header fields with the same field name (see <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) 1092 1092 </li> 1093 1093 <li>normalizing both header field values in a way that is known to have identical semantics, according to the header field's specification … … 1367 1367 that time. 1368 1368 </p> 1369 <p id="rfc.section.3.3.p.3">The field-value is an absolute date and time as defined by HTTP-date in <a href="p 1-messaging.html#date.time.formats.full.date" title="Date/Time Formats: Full Date">Section 6.1</a> of <a href="#Part1" id="rfc.xref.Part1.18"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>; a sender <em class="bcp14">MUST</em> use the rfc1123-date format.1369 <p id="rfc.section.3.3.p.3">The field-value is an absolute date and time as defined by HTTP-date in <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 8</a> of <a href="#Part2" id="rfc.xref.Part2.7"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>; a sender <em class="bcp14">MUST</em> use the rfc1123-date format. 1370 1370 </p> 1371 1371 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.7"></span> <a href="#header.expires" class="smpl">Expires</a> = <a href="#abnf.dependencies" class="smpl">HTTP-date</a> … … 1382 1382 of 32-bit integers for time values), and most caches will evict a response far sooner than that. Therefore, senders ought 1383 1383 not produce them. 1384 </p> 1385 <p id="rfc.section.3.3.p.9">An origin server without a clock <em class="bcp14">MUST NOT</em> assign Expires values to a response unless these values were associated with the resource by a system or user with a reliable 1386 clock. It <em class="bcp14">MAY</em> assign an Expires value that is known, at or before server configuration time, to be in the past (this allows "pre-expiration" 1387 of responses without storing separate Expires values for each resource). 1384 1388 </p> 1385 1389 <div id="rfc.iref.p.5"></div> … … 1695 1699 </p> 1696 1700 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 1697 <p id="rfc.section.7.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 1 2</a> of <a href="#Part1" id="rfc.xref.Part1.19"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.1701 <p id="rfc.section.7.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 11</a> of <a href="#Part1" id="rfc.xref.Part1.16"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 1698 1702 </p> 1699 1703 <h1 id="rfc.references"><a id="rfc.section.8" href="#rfc.section.8">8.</a> References … … 1809 1813 <a href="#header.expires" class="smpl">Expires</a> = HTTP-date 1810 1814 1811 <a href="#abnf.dependencies" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part 1], Section 6.1>1815 <a href="#abnf.dependencies" class="smpl">HTTP-date</a> = <HTTP-date, defined in [Part2], Section 8> 1812 1816 1813 1817 <a href="#core.rules" class="smpl">OWS</a> = <OWS, defined in [Part1], Section 1.2.2> … … 1843 1847 <a href="#abnf.dependencies" class="smpl">port</a> = <port, defined in [Part1], Section 2.7> 1844 1848 <a href="#header.pragma" class="smpl">pragma-directive</a> = "no-cache" / extension-pragma 1845 <a href="#abnf.dependencies" class="smpl">pseudonym</a> = <pseudonym, defined in [Part1], Section 9.9>1849 <a href="#abnf.dependencies" class="smpl">pseudonym</a> = <pseudonym, defined in [Part1], Section 8.8> 1846 1850 1847 1851 <a href="#core.rules" class="smpl">quoted-string</a> = <quoted-string, defined in [Part1], Section 3.2.3> … … 2198 2202 </li> 2199 2203 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 2200 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1.4</a>, <a href="#rfc.xref.Part1.2">1.4.1</a>, <a href="#rfc.xref.Part1.3">1.4.1</a>, <a href="#rfc.xref.Part1.4">1.4.1</a>, <a href="#rfc.xref.Part1.5">1.4.1</a>, <a href="#rfc.xref.Part1.6">1.4.2</a>, <a href="#rfc.xref.Part1.7">1.4.2</a>, <a href="#rfc.xref.Part1.8">1.4.2</a>, <a href="#rfc.xref.Part1.9">1.4.2</a>, <a href="#rfc.xref.Part1.10"> 1.4.2</a>, <a href="#rfc.xref.Part1.11">2.1</a>, <a href="#rfc.xref.Part1.12">2.2</a>, <a href="#rfc.xref.Part1.13">2.3.2</a>, <a href="#rfc.xref.Part1.14">2.5</a>, <a href="#rfc.xref.Part1.15">2.5</a>, <a href="#rfc.xref.Part1.16">2.5</a>, <a href="#rfc.xref.Part1.17">2.7</a>, <a href="#rfc.xref.Part1.18">3.3</a>, <a href="#rfc.xref.Part1.19">7</a>, <a href="#Part1"><b>8.1</b></a><ul>2204 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1.4</a>, <a href="#rfc.xref.Part1.2">1.4.1</a>, <a href="#rfc.xref.Part1.3">1.4.1</a>, <a href="#rfc.xref.Part1.4">1.4.1</a>, <a href="#rfc.xref.Part1.5">1.4.1</a>, <a href="#rfc.xref.Part1.6">1.4.2</a>, <a href="#rfc.xref.Part1.7">1.4.2</a>, <a href="#rfc.xref.Part1.8">1.4.2</a>, <a href="#rfc.xref.Part1.9">1.4.2</a>, <a href="#rfc.xref.Part1.10">2.1</a>, <a href="#rfc.xref.Part1.11">2.2</a>, <a href="#rfc.xref.Part1.12">2.5</a>, <a href="#rfc.xref.Part1.13">2.5</a>, <a href="#rfc.xref.Part1.14">2.5</a>, <a href="#rfc.xref.Part1.15">2.7</a>, <a href="#rfc.xref.Part1.16">7</a>, <a href="#Part1"><b>8.1</b></a><ul> 2201 2205 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.1">1.4</a></li> 2202 2206 <li><em>Section 1.2.2</em> <a href="#rfc.xref.Part1.3">1.4.1</a></li> 2203 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1. 8">1.4.2</a>, <a href="#rfc.xref.Part1.10">1.4.2</a></li>2204 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.6">1.4.2</a>, <a href="#rfc.xref.Part1.1 7">2.7</a></li>2207 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.7">1.4.2</a>, <a href="#rfc.xref.Part1.9">1.4.2</a></li> 2208 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.6">1.4.2</a>, <a href="#rfc.xref.Part1.15">2.7</a></li> 2205 2209 <li><em>Section 3.2.3</em> <a href="#rfc.xref.Part1.4">1.4.1</a>, <a href="#rfc.xref.Part1.5">1.4.1</a></li> 2206 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.1 2">2.2</a>, <a href="#rfc.xref.Part1.14">2.5</a>, <a href="#rfc.xref.Part1.15">2.5</a>, <a href="#rfc.xref.Part1.16">2.5</a></li>2207 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.7">1.4.2</a>, <a href="#rfc.xref.Part1.18">3.3</a></li>2208 <li><em>Section 9.3</em> <a href="#rfc.xref.Part1.13">2.3.2</a></li>2209 <li><em>Section 9.9</em> <a href="#rfc.xref.Part1.9">1.4.2</a></li>2210 <li><em>Section 12</em> <a href="#rfc.xref.Part1.19">7</a></li>2211 </ul>2212 </li>2213 <li><em>Part2</em> <a href="#rfc.xref.Part2.1">2</a>, <a href="#rfc.xref.Part2.2">2.2</a>, <a href="#rfc.xref.Part2.3">2.3.1.1</a>, <a href="#rfc.xref.Part2.4">2.5</a>, <a href="#Part2"><b>8.1</b></a><ul>2214 <li><em>Section 6.1.1</em> <a href="#rfc.xref.Part2.2">2.2</a>, <a href="#rfc.xref.Part2.4">2.5</a></li>2215 <li><em>Section 7</em> <a href="#rfc.xref.Part2.3">2.3.1.1</a></li>2210 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.11">2.2</a>, <a href="#rfc.xref.Part1.12">2.5</a>, <a href="#rfc.xref.Part1.13">2.5</a>, <a href="#rfc.xref.Part1.14">2.5</a></li> 2211 <li><em>Section 8.8</em> <a href="#rfc.xref.Part1.8">1.4.2</a></li> 2212 <li><em>Section 11</em> <a href="#rfc.xref.Part1.16">7</a></li> 2213 </ul> 2214 </li> 2215 <li><em>Part2</em> <a href="#rfc.xref.Part2.1">1.4.2</a>, <a href="#rfc.xref.Part2.2">2</a>, <a href="#rfc.xref.Part2.3">2.2</a>, <a href="#rfc.xref.Part2.4">2.3.1.1</a>, <a href="#rfc.xref.Part2.5">2.3.2</a>, <a href="#rfc.xref.Part2.6">2.5</a>, <a href="#rfc.xref.Part2.7">3.3</a>, <a href="#Part2"><b>8.1</b></a><ul> 2216 <li><em>Section 6.1.1</em> <a href="#rfc.xref.Part2.3">2.2</a>, <a href="#rfc.xref.Part2.6">2.5</a></li> 2217 <li><em>Section 7</em> <a href="#rfc.xref.Part2.4">2.3.1.1</a></li> 2218 <li><em>Section 8</em> <a href="#rfc.xref.Part2.1">1.4.2</a>, <a href="#rfc.xref.Part2.7">3.3</a></li> 2219 <li><em>Section 9.2</em> <a href="#rfc.xref.Part2.5">2.3.2</a></li> 2216 2220 </ul> 2217 2221 </li> -
draft-ietf-httpbis/latest/p6-cache.xml
r1433 r1436 26 26 <!ENTITY partial "<xref target='Part5' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 27 27 <!ENTITY combining-byte-ranges "<xref target='Part5' x:rel='#combining.byte.ranges' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 28 <!ENTITY full-date "<xref target='Part1' x:rel='#date.time.formats.full.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">28 <!ENTITY http-date "<xref target='Part2' x:rel='#http.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 29 29 <!ENTITY header-authorization "<xref target='Part7' x:rel='#header.authorization' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 30 30 <!ENTITY header-connection "<xref target='Part1' x:rel='#header.connection' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 31 <!ENTITY header-date "<xref target='Part 1' x:rel='#header.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">31 <!ENTITY header-date "<xref target='Part2' x:rel='#header.date' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 32 32 <!ENTITY header-via "<xref target='Part1' x:rel='#header.via' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 33 33 <!ENTITY header-last-modified "<xref target='Part4' x:rel='#header.last-modified' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 453 453 <figure><!--Part1--><artwork type="abnf2616"> 454 454 <x:ref>field-name</x:ref> = <field-name, defined in &header-fields;> 455 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in & full-date;>455 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in &http-date;> 456 456 <x:ref>port</x:ref> = <port, defined in &uri;> 457 457 <x:ref>pseudonym</x:ref> = <pseudonym, defined in &header-via;> … … 1601 1601 <t> 1602 1602 The field-value is an absolute date and time as defined by HTTP-date in 1603 & full-date;; a sender &MUST; use the rfc1123-date format.1603 &http-date;; a sender &MUST; use the rfc1123-date format. 1604 1604 </t> 1605 1605 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Expires"/> … … 1631 1631 time values), and most caches will evict a response far sooner than 1632 1632 that. Therefore, senders ought not produce them. 1633 </t> 1634 <t> 1635 An origin server without a clock &MUST-NOT; assign Expires 1636 values to a response unless these values were associated 1637 with the resource by a system or user with a reliable clock. It &MAY; 1638 assign an Expires value that is known, at or before server 1639 configuration time, to be in the past (this allows "pre-expiration" 1640 of responses without storing separate Expires values for each 1641 resource). 1633 1642 </t> 1634 1643 </section> … … 2468 2477 <x:ref>Expires</x:ref> = HTTP-date 2469 2478 2470 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in [Part 1], Section 6.1>2479 <x:ref>HTTP-date</x:ref> = <HTTP-date, defined in [Part2], Section 8> 2471 2480 2472 2481 <x:ref>OWS</x:ref> = <OWS, defined in [Part1], Section 1.2.2> … … 2502 2511 <x:ref>port</x:ref> = <port, defined in [Part1], Section 2.7> 2503 2512 <x:ref>pragma-directive</x:ref> = "no-cache" / extension-pragma 2504 <x:ref>pseudonym</x:ref> = <pseudonym, defined in [Part1], Section 9.9>2513 <x:ref>pseudonym</x:ref> = <pseudonym, defined in [Part1], Section 8.8> 2505 2514 2506 2515 <x:ref>quoted-string</x:ref> = <quoted-string, defined in [Part1], Section 3.2.3>
Note: See TracChangeset
for help on using the changeset viewer.