Ticket #163: 163.diff
File 163.diff, 115.9 KB (added by julian.reschke@…, 14 years ago) |
---|
-
p1-messaging.xml
838 838 <section title="Date/Time Formats" anchor="date.time.formats"> 839 839 <section title="Full Date" anchor="full.date"> 840 840 <x:anchor-alias value="HTTP-date"/> 841 <x:anchor-alias value="obsolete-date"/>842 <x:anchor-alias value="rfc1123-date"/>843 <x:anchor-alias value="rfc850-date"/>844 <x:anchor-alias value="asctime-date"/>845 <x:anchor-alias value="date1"/>846 <x:anchor-alias value="date2"/>847 <x:anchor-alias value="date3"/>848 <x:anchor-alias value="rfc1123-date"/>849 <x:anchor-alias value="time"/>850 <x:anchor-alias value="wkday"/>851 <x:anchor-alias value="weekday"/>852 <x:anchor-alias value="month"/>853 841 <t> 854 842 HTTP applications have historically allowed three different formats 855 843 for the representation of date/time stamps: … … 869 857 only generate the RFC 1123 format for representing HTTP-date values 870 858 in header fields. See <xref target="tolerant.applications"/> for further information. 871 859 </t> 872 <x:note>873 <t>874 <x:h>Note:</x:h> Recipients of date values are encouraged to be robust in875 accepting date values that may have been sent by non-HTTP876 applications, as is sometimes the case when retrieving or posting877 messages via proxies/gateways to SMTP or NNTP.878 </t>879 </x:note>880 860 <t> 881 861 All HTTP date/time stamps &MUST; be represented in Greenwich Mean Time 882 862 (GMT), without exception. For the purposes of HTTP, GMT is exactly … … 887 867 additional whitespace beyond that specifically included as SP in the 888 868 grammar. 889 869 </t> 890 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="HTTP-date"/><iref primary="true" item="Grammar" subitem="rfc1123-date"/><iref primary="true" item="Grammar" subitem="obsolete-date"/><iref primary="true" item="Grammar" subitem="rfc850-date"/><iref primary="true" item="Grammar" subitem="asctime-date"/><iref primary="true" item="Grammar" subitem="date1"/><iref primary="true" item="Grammar" subitem="date2"/><iref primary="true" item="Grammar" subitem="date3"/><iref primary="true" item="Grammar" subitem="time"/><iref primary="true" item="Grammar" subitem="wkday"/><iref primary="true" item="Grammar" subitem="weekday"/><iref primary="true" item="Grammar" subitem="month"/> 891 <x:ref>HTTP-date</x:ref> = <x:ref>rfc1123-date</x:ref> / <x:ref>obsolete-date</x:ref> 892 <x:ref>obsolete-date</x:ref> = <x:ref>rfc850-date</x:ref> / <x:ref>asctime-date</x:ref> 893 <x:ref>rfc1123-date</x:ref> = <x:ref>wkday</x:ref> "," <x:ref>SP</x:ref> date1 <x:ref>SP</x:ref> time <x:ref>SP</x:ref> GMT 894 <x:ref>rfc850-date</x:ref> = <x:ref>weekday</x:ref> "," <x:ref>SP</x:ref> date2 <x:ref>SP</x:ref> time <x:ref>SP</x:ref> GMT 895 <x:ref>asctime-date</x:ref> = <x:ref>wkday</x:ref> <x:ref>SP</x:ref> <x:ref>date3</x:ref> <x:ref>SP</x:ref> <x:ref>time</x:ref> <x:ref>SP</x:ref> 4<x:ref>DIGIT</x:ref> 896 <x:ref>date1</x:ref> = 2<x:ref>DIGIT</x:ref> <x:ref>SP</x:ref> <x:ref>month</x:ref> <x:ref>SP</x:ref> 4<x:ref>DIGIT</x:ref> 897 ; day month year (e.g., 02 Jun 1982) 898 <x:ref>date2</x:ref> = 2<x:ref>DIGIT</x:ref> "-" <x:ref>month</x:ref> "-" 2<x:ref>DIGIT</x:ref> 899 ; day-month-year (e.g., 02-Jun-82) 900 <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> )) 901 ; month day (e.g., Jun 2) 902 <x:ref>time</x:ref> = 2<x:ref>DIGIT</x:ref> ":" 2<x:ref>DIGIT</x:ref> ":" 2<x:ref>DIGIT</x:ref> 903 ; 00:00:00 - 23:59:59 904 <x:ref>wkday</x:ref> = s-Mon / s-Tue / s-Wed 870 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="HTTP-date"/> 871 <x:ref>HTTP-date</x:ref> = <x:ref>rfc1123-date</x:ref> / <x:ref>obs-date</x:ref> 872 </artwork></figure> 873 <t anchor="preferred.date.format"> 874 <x:anchor-alias value="rfc1123-date"/> 875 <x:anchor-alias value="time-of-day"/> 876 <x:anchor-alias value="hour"/> 877 <x:anchor-alias value="minute"/> 878 <x:anchor-alias value="second"/> 879 <x:anchor-alias value="day-name"/> 880 <x:anchor-alias value="day"/> 881 <x:anchor-alias value="month"/> 882 <x:anchor-alias value="year"/> 883 <x:anchor-alias value="GMT"/> 884 Preferred format: 885 </t> 886 <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"/> 887 <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> 888 889 <x:ref>day-name</x:ref> = s-Mon / s-Tue / s-Wed 905 890 / s-Thu / s-Fri / s-Sat / s-Sun 906 <x:ref>weekday</x:ref> = l-Mon / l-Tue / l-Wed907 / l-Thu / l-Fri / l-Sat / l-Sun908 <x:ref>month</x:ref> = s-Jan / s-Feb / s-Mar / s-Apr909 / s-May / s-Jun / s-Jul / s-Aug910 / s-Sep / s-Oct / s-Nov / s-Dec911 891 912 GMT = <x:abnf-char-sequence>"GMT"</x:abnf-char-sequence> ; "GMT", case-sensitive913 914 892 s-Mon = <x:abnf-char-sequence>"Mon"</x:abnf-char-sequence> ; "Mon", case-sensitive 915 893 s-Tue = <x:abnf-char-sequence>"Tue"</x:abnf-char-sequence> ; "Tue", case-sensitive 916 894 s-Wed = <x:abnf-char-sequence>"Wed"</x:abnf-char-sequence> ; "Wed", case-sensitive … … 919 897 s-Sat = <x:abnf-char-sequence>"Sat"</x:abnf-char-sequence> ; "Sat", case-sensitive 920 898 s-Sun = <x:abnf-char-sequence>"Sun"</x:abnf-char-sequence> ; "Sun", case-sensitive 921 899 922 l-Mon = <x:abnf-char-sequence>"Monday"</x:abnf-char-sequence> ; "Monday", case-sensitive 923 l-Tue = <x:abnf-char-sequence>"Tuesday"</x:abnf-char-sequence> ; "Tuesday", case-sensitive 924 l-Wed = <x:abnf-char-sequence>"Wednesday"</x:abnf-char-sequence> ; "Wednesday", case-sensitive 925 l-Thu = <x:abnf-char-sequence>"Thursday"</x:abnf-char-sequence> ; "Thursday", case-sensitive 926 l-Fri = <x:abnf-char-sequence>"Friday"</x:abnf-char-sequence> ; "Friday", case-sensitive 927 l-Sat = <x:abnf-char-sequence>"Saturday"</x:abnf-char-sequence> ; "Saturday", case-sensitive 928 l-Sun = <x:abnf-char-sequence>"Sunday"</x:abnf-char-sequence> ; "Sunday", case-sensitive 900 <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> 901 ; e.g., 02 Jun 1982 929 902 903 <x:ref>day</x:ref> = 2<x:ref>DIGIT</x:ref> 904 <x:ref>month</x:ref> = s-Jan / s-Feb / s-Mar / s-Apr 905 / s-May / s-Jun / s-Jul / s-Aug 906 / s-Sep / s-Oct / s-Nov / s-Dec 907 <x:ref>year</x:ref> = 4<x:ref>DIGIT</x:ref> 908 930 909 s-Jan = <x:abnf-char-sequence>"Jan"</x:abnf-char-sequence> ; "Jan", case-sensitive 931 910 s-Feb = <x:abnf-char-sequence>"Feb"</x:abnf-char-sequence> ; "Feb", case-sensitive 932 911 s-Mar = <x:abnf-char-sequence>"Mar"</x:abnf-char-sequence> ; "Mar", case-sensitive … … 939 918 s-Oct = <x:abnf-char-sequence>"Oct"</x:abnf-char-sequence> ; "Oct", case-sensitive 940 919 s-Nov = <x:abnf-char-sequence>"Nov"</x:abnf-char-sequence> ; "Nov", case-sensitive 941 920 s-Dec = <x:abnf-char-sequence>"Dec"</x:abnf-char-sequence> ; "Dec", case-sensitive 921 922 <x:ref>GMT</x:ref> = <x:abnf-char-sequence>"GMT"</x:abnf-char-sequence> ; "GMT", case-sensitive 923 924 <x:ref>time-of-day</x:ref> = <x:ref>hour</x:ref> ":" <x:ref>minute</x:ref> ":" <x:ref>second</x:ref> 925 ; 00:00:00 - 23:59:59 926 927 <x:ref>hour</x:ref> = 2<x:ref>DIGIT</x:ref> 928 <x:ref>minute</x:ref> = 2<x:ref>DIGIT</x:ref> 929 <x:ref>second</x:ref> = 2<x:ref>DIGIT</x:ref> 942 930 </artwork></figure> 943 931 <t> 944 <x:h>Note:</x:h> HTTP requirements for the date/time stamp format apply only945 to their usage within the protocol stream. Clients and servers are946 not required to use these formats for user presentation, request947 logging, etc.932 The semantics of <x:ref>day-name</x:ref>, <x:ref>day</x:ref>, 933 <x:ref>month</x:ref>, <x:ref>year</x:ref>, and <x:ref>time-of-day</x:ref> are the 934 same as those defined in the RFC 5322 constructs 935 with the corresponding name (<xref target="RFC5322" x:fmt="," x:sec="3.3"/>). 948 936 </t> 937 <t anchor="obsolete.date.formats"> 938 <x:anchor-alias value="obs-date"/> 939 <x:anchor-alias value="rfc850-date"/> 940 <x:anchor-alias value="asctime-date"/> 941 <x:anchor-alias value="date1"/> 942 <x:anchor-alias value="date2"/> 943 <x:anchor-alias value="date3"/> 944 <x:anchor-alias value="rfc1123-date"/> 945 <x:anchor-alias value="day-name-l"/> 946 Obsolete formats: 947 </t> 948 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="obs-date"/> 949 <x:ref>obs-date</x:ref> = <x:ref>rfc850-date</x:ref> / <x:ref>asctime-date</x:ref> 950 </artwork></figure> 951 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="rfc850-date"/> 952 <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> 953 <x:ref>date2</x:ref> = <x:ref>day</x:ref> "-" <x:ref>month</x:ref> "-" 2<x:ref>DIGIT</x:ref> 954 ; day-month-year (e.g., 02-Jun-82) 955 956 <x:ref>day-name-l</x:ref> = l-Mon / l-Tue / l-Wed 957 / l-Thu / l-Fri / l-Sat / l-Sun 958 959 l-Mon = <x:abnf-char-sequence>"Monday"</x:abnf-char-sequence> ; "Monday", case-sensitive 960 l-Tue = <x:abnf-char-sequence>"Tuesday"</x:abnf-char-sequence> ; "Tuesday", case-sensitive 961 l-Wed = <x:abnf-char-sequence>"Wednesday"</x:abnf-char-sequence> ; "Wednesday", case-sensitive 962 l-Thu = <x:abnf-char-sequence>"Thursday"</x:abnf-char-sequence> ; "Thursday", case-sensitive 963 l-Fri = <x:abnf-char-sequence>"Friday"</x:abnf-char-sequence> ; "Friday", case-sensitive 964 l-Sat = <x:abnf-char-sequence>"Saturday"</x:abnf-char-sequence> ; "Saturday", case-sensitive 965 l-Sun = <x:abnf-char-sequence>"Sunday"</x:abnf-char-sequence> ; "Sunday", case-sensitive 966 </artwork></figure> 967 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="asctime-date"/> 968 <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> 969 <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> )) 970 ; month day (e.g., Jun 2) 971 </artwork></figure> 972 <x:note> 973 <t> 974 <x:h>Note:</x:h> Recipients of date values are encouraged to be robust in 975 accepting date values that may have been sent by non-HTTP 976 applications, as is sometimes the case when retrieving or posting 977 messages via proxies/gateways to SMTP or NNTP. 978 </t> 979 </x:note> 980 <x:note> 981 <t> 982 <x:h>Note:</x:h> HTTP requirements for the date/time stamp format apply only 983 to their usage within the protocol stream. Clients and servers are 984 not required to use these formats for user presentation, request 985 logging, etc. 986 </t> 987 </x:note> 949 988 </section> 950 989 </section> 951 990 … … 970 1009 <x:anchor-alias value="value"/> 971 1010 Parameters are in the form of attribute/value pairs. 972 1011 </t> 973 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="parameter"/><iref primary="true" item="Grammar" subitem="attribute"/><iref primary="true" item="Grammar" subitem="value"/> 1012 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="parameter"/><iref primary="true" item="Grammar" subitem="attribute"/><iref primary="true" item="Grammar" subitem="value"/><iref primary="true" item="Grammar" subitem="date2"/><iref primary="true" item="Grammar" subitem="date3"/> 974 1013 <x:ref>parameter</x:ref> = <x:ref>attribute</x:ref> <x:ref>BWS</x:ref> "=" <x:ref>BWS</x:ref> <x:ref>value</x:ref> 975 1014 <x:ref>attribute</x:ref> = <x:ref>token</x:ref> 976 1015 <x:ref>value</x:ref> = <x:ref>token</x:ref> / <x:ref>quoted-string</x:ref> … … 4361 4400 <x:ref>Date</x:ref> = "Date:" OWS Date-v 4362 4401 <x:ref>Date-v</x:ref> = HTTP-date 4363 4402 4364 GMT= %x47.4D.544403 <x:ref>GMT</x:ref> = %x47.4D.54 4365 4404 4366 4405 <x:ref>HTTP-Prot-Name</x:ref> = %x48.54.54.50 4367 4406 <x:ref>HTTP-Version</x:ref> = HTTP-Prot-Name "/" 1*DIGIT "." 1*DIGIT 4368 <x:ref>HTTP-date</x:ref> = rfc1123-date / obs olete-date4407 <x:ref>HTTP-date</x:ref> = rfc1123-date / obs-date 4369 4408 <x:ref>HTTP-message</x:ref> = Request / Response 4370 4409 <x:ref>Host</x:ref> = "Host:" OWS Host-v 4371 4410 <x:ref>Host-v</x:ref> = uri-host [ ":" port ] … … 4408 4447 <x:ref>Warning</x:ref> = <Warning, defined in [Part6], Section 3.6> 4409 4448 4410 4449 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in [RFC3986], Section 4.3> 4411 <x:ref>asctime-date</x:ref> = wkday SP date3 SP time SP 4DIGIT4450 <x:ref>asctime-date</x:ref> = day-name SP date3 SP time-of-day SP year 4412 4451 <x:ref>attribute</x:ref> = token 4413 4452 <x:ref>authority</x:ref> = <authority, defined in [RFC3986], Section 3.2> 4414 4453 … … 4422 4461 <x:ref>connection-token</x:ref> = token 4423 4462 <x:ref>ctext</x:ref> = OWS / %x21-27 / %x2A-5B / %x5D-7E / obs-text 4424 4463 4425 <x:ref>date1</x:ref> = 2DIGIT SP month SP 4DIGIT4426 <x:ref>date2</x:ref> = 2DIGIT"-" month "-" 2DIGIT4464 <x:ref>date1</x:ref> = day SP month SP year 4465 <x:ref>date2</x:ref> = day "-" month "-" 2DIGIT 4427 4466 <x:ref>date3</x:ref> = month SP ( 2DIGIT / ( SP DIGIT ) ) 4467 <x:ref>day</x:ref> = 2DIGIT 4468 <x:ref>day-name</x:ref> = s-Mon / s-Tue / s-Wed / s-Thu / s-Fri / s-Sat / s-Sun 4469 <x:ref>day-name-l</x:ref> = l-Mon / l-Tue / l-Wed / l-Thu / l-Fri / l-Sat / l-Sun 4428 4470 4429 4471 <x:ref>entity-body</x:ref> = <entity-body, defined in [Part3], Section 3.2> 4430 4472 <x:ref>entity-header</x:ref> = <entity-header, defined in [Part3], Section 3.1> … … 4439 4481 <x:ref>generic-message</x:ref> = start-line *( message-header CRLF ) CRLF [ 4440 4482 message-body ] 4441 4483 4484 <x:ref>hour</x:ref> = 2DIGIT 4442 4485 <x:ref>http-URI</x:ref> = "http://" authority path-abempty [ "?" query ] 4443 4486 4444 4487 l-Fri = %x46.72.69.64.61.79 … … 4453 4496 <x:ref>message-body</x:ref> = entity-body / 4454 4497 <entity-body encoded as per Transfer-Encoding> 4455 4498 <x:ref>message-header</x:ref> = field-name ":" OWS [ field-value ] OWS 4499 <x:ref>minute</x:ref> = 2DIGIT 4456 4500 <x:ref>month</x:ref> = s-Jan / s-Feb / s-Mar / s-Apr / s-May / s-Jun / s-Jul / s-Aug 4457 4501 / s-Sep / s-Oct / s-Nov / s-Dec 4458 4502 4503 <x:ref>obs-date</x:ref> = rfc850-date / asctime-date 4459 4504 <x:ref>obs-fold</x:ref> = CRLF 4460 4505 <x:ref>obs-text</x:ref> = %x80-FF 4461 <x:ref>obsolete-date</x:ref> = rfc850-date / asctime-date4462 4506 4463 4507 <x:ref>parameter</x:ref> = attribute BWS "=" BWS value 4464 4508 <x:ref>partial-URI</x:ref> = relative-part [ "?" query ] … … 4485 4529 <x:ref>request-target</x:ref> = "*" / absolute-URI / ( path-absolute [ "?" query ] ) 4486 4530 / authority 4487 4531 <x:ref>response-header</x:ref> = <response-header, defined in [Part2], Section 5> 4488 <x:ref>rfc1123-date</x:ref> = wkday "," SP date1 SP timeSP GMT4489 <x:ref>rfc850-date</x:ref> = weekday "," SP date2 SP timeSP GMT4532 <x:ref>rfc1123-date</x:ref> = day-name "," SP date1 SP time-of-day SP GMT 4533 <x:ref>rfc850-date</x:ref> = day-name-l "," SP date2 SP time-of-day SP GMT 4490 4534 4491 4535 s-Apr = %x41.70.72 4492 4536 s-Aug = %x41.75.67 … … 4507 4551 s-Thu = %x54.68.75 4508 4552 s-Tue = %x54.75.65 4509 4553 s-Wed = %x57.65.64 4554 <x:ref>second</x:ref> = 2DIGIT 4510 4555 <x:ref>start-line</x:ref> = Request-Line / Status-Line 4511 4556 4512 4557 <x:ref>t-codings</x:ref> = "trailers" / ( transfer-extension [ te-params ] ) … … 4514 4559 "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA 4515 4560 <x:ref>te-ext</x:ref> = OWS ";" OWS token [ "=" ( token / quoted-string ) ] 4516 4561 <x:ref>te-params</x:ref> = OWS ";" OWS "q=" qvalue *te-ext 4517 <x:ref>time </x:ref> = 2DIGIT ":" 2DIGIT ":" 2DIGIT4562 <x:ref>time-of-day</x:ref> = hour ":" minute ":" second 4518 4563 <x:ref>token</x:ref> = 1*tchar 4519 4564 <x:ref>trailer-part</x:ref> = *( entity-header CRLF ) 4520 4565 <x:ref>transfer-coding</x:ref> = "chunked" / transfer-extension … … 4524 4569 4525 4570 <x:ref>value</x:ref> = token / quoted-string 4526 4571 4527 <x:ref>weekday</x:ref> = l-Mon / l-Tue / l-Wed / l-Thu / l-Fri / l-Sat / l-Sun 4528 <x:ref>wkday</x:ref> = s-Mon / s-Tue / s-Wed / s-Thu / s-Fri / s-Sat / s-Sun 4572 <x:ref>year</x:ref> = 4DIGIT 4529 4573 4530 4574 4531 4575 </artwork> -
p1-messaging.html
978 978 </pre><p id="rfc.section.3.2.1.p.3">The first format is preferred as an Internet standard and represents 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>. The other formats are described here only for compatibility with obsolete implementations. HTTP/1.1 clients and servers 979 979 that parse the 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. See <a href="#tolerant.applications" title="Tolerant Applications">Appendix A</a> for further information. 980 980 </p> 981 <div class="note"> 982 <p> <b>Note:</b> Recipients of date values are encouraged to be robust in accepting date values that may have been sent by non-HTTP applications, 983 as is sometimes the case when retrieving or posting messages via proxies/gateways to SMTP or NNTP. 984 </p> 985 </div> 986 <p id="rfc.section.3.2.1.p.5">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 981 <p id="rfc.section.3.2.1.p.4">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 987 982 Universal Time). This is indicated in the first two formats by the inclusion of "GMT" as the three-letter abbreviation for 988 983 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. 989 984 </p> 990 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span> <a href="#full.date" class="smpl">HTTP-date</a> = <a href="#full.date" class="smpl">rfc1123-date</a> / <a href="#full.date" class="smpl">obsolete-date</a> 991 <a href="#full.date" class="smpl">obsolete-date</a> = <a href="#full.date" class="smpl">rfc850-date</a> / <a href="#full.date" class="smpl">asctime-date</a> 992 <a href="#full.date" class="smpl">rfc1123-date</a> = <a href="#full.date" class="smpl">wkday</a> "," <a href="#core.rules" class="smpl">SP</a> date1 <a href="#core.rules" class="smpl">SP</a> time <a href="#core.rules" class="smpl">SP</a> GMT 993 <a href="#full.date" class="smpl">rfc850-date</a> = <a href="#full.date" class="smpl">weekday</a> "," <a href="#core.rules" class="smpl">SP</a> date2 <a href="#core.rules" class="smpl">SP</a> time <a href="#core.rules" class="smpl">SP</a> GMT 994 <a href="#full.date" class="smpl">asctime-date</a> = <a href="#full.date" class="smpl">wkday</a> <a href="#core.rules" class="smpl">SP</a> <a href="#full.date" class="smpl">date3</a> <a href="#core.rules" class="smpl">SP</a> <a href="#full.date" class="smpl">time</a> <a href="#core.rules" class="smpl">SP</a> 4<a href="#core.rules" class="smpl">DIGIT</a> 995 <a href="#full.date" class="smpl">date1</a> = 2<a href="#core.rules" class="smpl">DIGIT</a> <a href="#core.rules" class="smpl">SP</a> <a href="#full.date" class="smpl">month</a> <a href="#core.rules" class="smpl">SP</a> 4<a href="#core.rules" class="smpl">DIGIT</a> 996 ; day month year (e.g., 02 Jun 1982) 997 <a href="#full.date" class="smpl">date2</a> = 2<a href="#core.rules" class="smpl">DIGIT</a> "-" <a href="#full.date" class="smpl">month</a> "-" 2<a href="#core.rules" class="smpl">DIGIT</a> 998 ; day-month-year (e.g., 02-Jun-82) 999 <a href="#full.date" class="smpl">date3</a> = <a href="#full.date" class="smpl">month</a> <a href="#core.rules" class="smpl">SP</a> ( 2<a href="#core.rules" class="smpl">DIGIT</a> / ( <a href="#core.rules" class="smpl">SP</a> 1<a href="#core.rules" class="smpl">DIGIT</a> )) 1000 ; month day (e.g., Jun 2) 1001 <a href="#full.date" class="smpl">time</a> = 2<a href="#core.rules" class="smpl">DIGIT</a> ":" 2<a href="#core.rules" class="smpl">DIGIT</a> ":" 2<a href="#core.rules" class="smpl">DIGIT</a> 1002 ; 00:00:00 - 23:59:59 1003 <a href="#full.date" class="smpl">wkday</a> = s-Mon / s-Tue / s-Wed 985 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.33"></span> <a href="#full.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> 986 </pre><div id="preferred.date.format"> 987 <p id="rfc.section.3.2.1.p.6"> Preferred format:</p> 988 </div> 989 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#core.rules" class="smpl">SP</a> date1 <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 990 991 <a href="#preferred.date.format" class="smpl">day-name</a> = s-Mon / s-Tue / s-Wed 1004 992 / s-Thu / s-Fri / s-Sat / s-Sun 1005 <a href="#full.date" class="smpl">weekday</a> = l-Mon / l-Tue / l-Wed1006 / l-Thu / l-Fri / l-Sat / l-Sun1007 <a href="#full.date" class="smpl">month</a> = s-Jan / s-Feb / s-Mar / s-Apr1008 / s-May / s-Jun / s-Jul / s-Aug1009 / s-Sep / s-Oct / s-Nov / s-Dec1010 993 1011 GMT = %x47.4D.54 ; "GMT", case-sensitive1012 1013 994 s-Mon = %x4D.6F.6E ; "Mon", case-sensitive 1014 995 s-Tue = %x54.75.65 ; "Tue", case-sensitive 1015 996 s-Wed = %x57.65.64 ; "Wed", case-sensitive … … 1018 999 s-Sat = %x53.61.74 ; "Sat", case-sensitive 1019 1000 s-Sun = %x53.75.6E ; "Sun", case-sensitive 1020 1001 1021 l-Mon = %x4D.6F.6E.64.61.79 ; "Monday", case-sensitive 1022 l-Tue = %x54.75.65.73.64.61.79 ; "Tuesday", case-sensitive 1023 l-Wed = %x57.65.64.6E.65.73.64.61.79 ; "Wednesday", case-sensitive 1024 l-Thu = %x54.68.75.72.73.64.61.79 ; "Thursday", case-sensitive 1025 l-Fri = %x46.72.69.64.61.79 ; "Friday", case-sensitive 1026 l-Sat = %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 1027 l-Sun = %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 1002 <a href="#obsolete.date.formats" class="smpl">date1</a> = <a href="#preferred.date.format" class="smpl">day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">month</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 1003 ; e.g., 02 Jun 1982 1028 1004 1005 <a href="#preferred.date.format" class="smpl">day</a> = 2<a href="#core.rules" class="smpl">DIGIT</a> 1006 <a href="#preferred.date.format" class="smpl">month</a> = s-Jan / s-Feb / s-Mar / s-Apr 1007 / s-May / s-Jun / s-Jul / s-Aug 1008 / s-Sep / s-Oct / s-Nov / s-Dec 1009 <a href="#preferred.date.format" class="smpl">year</a> = 4<a href="#core.rules" class="smpl">DIGIT</a> 1010 1029 1011 s-Jan = %x4A.61.6E ; "Jan", case-sensitive 1030 1012 s-Feb = %x46.65.62 ; "Feb", case-sensitive 1031 1013 s-Mar = %x4D.61.72 ; "Mar", case-sensitive … … 1038 1020 s-Oct = %x4F.63.74 ; "Oct", case-sensitive 1039 1021 s-Nov = %x4E.6F.76 ; "Nov", case-sensitive 1040 1022 s-Dec = %x44.65.63 ; "Dec", case-sensitive 1041 </pre><p id="rfc.section.3.2.1.p.7"> <b>Note:</b> HTTP requirements for the date/time stamp format apply only to their usage within the protocol stream. Clients and servers 1042 are not required to use these formats for user presentation, request logging, etc. 1023 1024 <a href="#preferred.date.format" class="smpl">GMT</a> = %x47.4D.54 ; "GMT", case-sensitive 1025 1026 <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> 1027 ; 00:00:00 - 23:59:59 1028 1029 <a href="#preferred.date.format" class="smpl">hour</a> = 2<a href="#core.rules" class="smpl">DIGIT</a> 1030 <a href="#preferred.date.format" class="smpl">minute</a> = 2<a href="#core.rules" class="smpl">DIGIT</a> 1031 <a href="#preferred.date.format" class="smpl">second</a> = 2<a href="#core.rules" class="smpl">DIGIT</a> 1032 </pre><p id="rfc.section.3.2.1.p.8">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 in the RFC 5322 constructs with the corresponding name (<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.3">Section 3.3</a>). 1043 1033 </p> 1034 <div id="obsolete.date.formats"> 1035 <p id="rfc.section.3.2.1.p.9"> Obsolete formats:</p> 1036 </div> 1037 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.46"></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> 1038 </pre><div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.47"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#core.rules" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 1039 <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="#core.rules" class="smpl">DIGIT</a> 1040 ; day-month-year (e.g., 02-Jun-82) 1041 1042 <a href="#obsolete.date.formats" class="smpl">day-name-l</a> = l-Mon / l-Tue / l-Wed 1043 / l-Thu / l-Fri / l-Sat / l-Sun 1044 1045 l-Mon = %x4D.6F.6E.64.61.79 ; "Monday", case-sensitive 1046 l-Tue = %x54.75.65.73.64.61.79 ; "Tuesday", case-sensitive 1047 l-Wed = %x57.65.64.6E.65.73.64.61.79 ; "Wednesday", case-sensitive 1048 l-Thu = %x54.68.75.72.73.64.61.79 ; "Thursday", case-sensitive 1049 l-Fri = %x46.72.69.64.61.79 ; "Friday", case-sensitive 1050 l-Sat = %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 1051 l-Sun = %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 1052 </pre><div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.48"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#core.rules" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 1053 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#core.rules" class="smpl">SP</a> ( 2<a href="#core.rules" class="smpl">DIGIT</a> / ( <a href="#core.rules" class="smpl">SP</a> 1<a href="#core.rules" class="smpl">DIGIT</a> )) 1054 ; month day (e.g., Jun 2) 1055 </pre><div class="note"> 1056 <p> <b>Note:</b> Recipients of date values are encouraged to be robust in accepting date values that may have been sent by non-HTTP applications, 1057 as is sometimes the case when retrieving or posting messages via proxies/gateways to SMTP or NNTP. 1058 </p> 1059 </div> 1060 <div class="note"> 1061 <p> <b>Note:</b> HTTP requirements for the date/time stamp format apply only to their usage within the protocol stream. Clients and servers 1062 are not required to use these formats for user presentation, request logging, etc. 1063 </p> 1064 </div> 1044 1065 <h2 id="rfc.section.3.3"><a href="#rfc.section.3.3">3.3</a> <a id="transfer.codings" href="#transfer.codings">Transfer Codings</a></h2> 1045 1066 <p id="rfc.section.3.3.p.1">Transfer-coding values are used to indicate an encoding transformation that has been, can be, or may need to be applied to 1046 1067 an entity-body in order to ensure "safe transport" through the network. This differs from a content coding in that the transfer-coding 1047 1068 is a property of the message, not of the original entity. 1048 1069 </p> 1049 <div id="rfc.figure.u.2 1"></div><pre class="inline"><span id="rfc.iref.g.45"></span><span id="rfc.iref.g.46"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / <a href="#transfer.codings" class="smpl">transfer-extension</a>1070 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / <a href="#transfer.codings" class="smpl">transfer-extension</a> 1050 1071 <a href="#transfer.codings" class="smpl">transfer-extension</a> = <a href="#rule.token.separators" class="smpl">token</a> *( <a href="#rule.whitespace" class="smpl">OWS</a> ";" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#transfer.codings" class="smpl">parameter</a> ) 1051 1072 </pre><div id="rule.parameter"> 1052 1073 <p id="rfc.section.3.3.p.3"> Parameters are in the form of attribute/value pairs.</p> 1053 1074 </div> 1054 <div id="rfc.figure.u.2 2"></div><pre class="inline"><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span> <a href="#transfer.codings" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> <a href="#rule.whitespace" class="smpl">BWS</a> "=" <a href="#rule.whitespace" class="smpl">BWS</a> <a href="#rule.parameter" class="smpl">value</a>1075 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.51"></span><span id="rfc.iref.g.52"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span> <a href="#transfer.codings" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> <a href="#rule.whitespace" class="smpl">BWS</a> "=" <a href="#rule.whitespace" class="smpl">BWS</a> <a href="#rule.parameter" class="smpl">value</a> 1055 1076 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#rule.token.separators" class="smpl">token</a> 1056 1077 <a href="#rule.parameter" class="smpl">value</a> = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a> 1057 1078 </pre><p id="rfc.section.3.3.p.5">All transfer-coding values are case-insensitive. HTTP/1.1 uses transfer-coding values in the TE header field (<a href="#header.te" id="rfc.xref.header.te.1" title="TE">Section 8.5</a>) and in the Transfer-Encoding header field (<a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.1" title="Transfer-Encoding">Section 8.7</a>). … … 1076 1097 indicator, followed by an <em class="bcp14">OPTIONAL</em> trailer containing entity-header fields. This allows dynamically produced content to be transferred along with the information 1077 1098 necessary for the recipient to verify that it has received the full message. 1078 1099 </p> 1079 <div id="rfc.figure.u.2 3"></div><pre class="inline"><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span><span id="rfc.iref.g.52"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span><span id="rfc.iref.g.56"></span><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span> <a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *<a href="#chunked.transfer.encoding" class="smpl">chunk</a>1100 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.56"></span><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span><span id="rfc.iref.g.59"></span><span id="rfc.iref.g.60"></span><span id="rfc.iref.g.61"></span><span id="rfc.iref.g.62"></span><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span> <a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *<a href="#chunked.transfer.encoding" class="smpl">chunk</a> 1080 1101 <a href="#chunked.transfer.encoding" class="smpl">last-chunk</a> 1081 1102 <a href="#chunked.transfer.encoding" class="smpl">trailer-part</a> 1082 1103 <a href="#core.rules" class="smpl">CRLF</a> … … 1114 1135 infinite buffer on the proxy. 1115 1136 </p> 1116 1137 <p id="rfc.section.3.3.1.p.7">A process for decoding the "chunked" transfer-coding can be represented in pseudo-code as:</p> 1117 <div id="rfc.figure.u.2 4"></div><pre class="text"> length := 01138 <div id="rfc.figure.u.28"></div><pre class="text"> length := 0 1118 1139 read chunk-size, chunk-ext (if any) and CRLF 1119 1140 while (chunk-size > 0) { 1120 1141 read chunk-data and CRLF … … 1136 1157 using product tokens also allow sub-products which form a significant part of the application to be listed, separated by whitespace. 1137 1158 By convention, the products are listed in order of their significance for identifying the application. 1138 1159 </p> 1139 <div id="rfc.figure.u.2 5"></div><pre class="inline"><span id="rfc.iref.g.59"></span><span id="rfc.iref.g.60"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>]1160 <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.65"></span><span id="rfc.iref.g.66"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 1140 1161 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#rule.token.separators" class="smpl">token</a> 1141 1162 </pre><p id="rfc.section.3.4.p.3">Examples:</p> 1142 <div id="rfc.figure.u. 26"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b31163 <div id="rfc.figure.u.30"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 1143 1164 Server: Apache/0.8.4 1144 1165 </pre><p id="rfc.section.3.4.p.5">Product tokens <em class="bcp14">SHOULD</em> be short and to the point. They <em class="bcp14">MUST NOT</em> be used for advertising or other non-essential information. Although any token character <em class="bcp14">MAY</em> appear in a product-version, this token <em class="bcp14">SHOULD</em> only be used for a version identifier (i.e., successive versions of the same product <em class="bcp14">SHOULD</em> only differ in the product-version portion of the product value). 1145 1166 </p> … … 1148 1169 is normalized to a real number in the range 0 through 1, where 0 is the minimum and 1 the maximum value. If a parameter has 1149 1170 a quality value of 0, then content with this parameter is `not acceptable' for the client. HTTP/1.1 applications <em class="bcp14">MUST NOT</em> generate more than three digits after the decimal point. User configuration of these values <em class="bcp14">SHOULD</em> also be limited in this fashion. 1150 1171 </p> 1151 <div id="rfc.figure.u. 27"></div><pre class="inline"><span id="rfc.iref.g.61"></span> <a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." 0*3<a href="#core.rules" class="smpl">DIGIT</a> ] )1172 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.67"></span> <a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." 0*3<a href="#core.rules" class="smpl">DIGIT</a> ] ) 1152 1173 / ( "1" [ "." 0*3("0") ] ) 1153 1174 </pre><div class="note"> 1154 1175 <p> <b>Note:</b> "Quality values" is a misnomer, since these values merely represent relative degradation in desired quality. … … 1157 1178 <h1 id="rfc.section.4"><a href="#rfc.section.4">4.</a> <a id="http.message" href="#http.message">HTTP Message</a></h1> 1158 1179 <h2 id="rfc.section.4.1"><a href="#rfc.section.4.1">4.1</a> <a id="message.types" href="#message.types">Message Types</a></h2> 1159 1180 <p id="rfc.section.4.1.p.1">HTTP messages consist of requests from client to server and responses from server to client.</p> 1160 <div id="rfc.figure.u. 28"></div><pre class="inline"><span id="rfc.iref.g.62"></span> <a href="#message.types" class="smpl">HTTP-message</a> = <a href="#request" class="smpl">Request</a> / <a href="#response" class="smpl">Response</a> ; HTTP/1.1 messages1161 </pre><p id="rfc.section.4.1.p.3">Request (<a href="#request" title="Request">Section 5</a>) and Response (<a href="#response" title="Response">Section 6</a>) messages use the generic message format of <a href="#RFC5322" id="rfc.xref.RFC5322. 2"><cite title="Internet Message Format">[RFC5322]</cite></a> for transferring entities (the payload of the message). Both types of message consist of a start-line, zero or more header1181 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.68"></span> <a href="#message.types" class="smpl">HTTP-message</a> = <a href="#request" class="smpl">Request</a> / <a href="#response" class="smpl">Response</a> ; HTTP/1.1 messages 1182 </pre><p id="rfc.section.4.1.p.3">Request (<a href="#request" title="Request">Section 5</a>) and Response (<a href="#response" title="Response">Section 6</a>) messages use the generic message format of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a> for transferring entities (the payload of the message). Both types of message consist of a start-line, zero or more header 1162 1183 fields (also known as "headers"), an empty line (i.e., a line with nothing preceding the CRLF) indicating the end of the header 1163 1184 fields, and possibly a message-body. 1164 1185 </p> 1165 <div id="rfc.figure.u. 29"></div><pre class="inline"><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span> <a href="#message.types" class="smpl">generic-message</a> = <a href="#message.types" class="smpl">start-line</a>1186 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.69"></span><span id="rfc.iref.g.70"></span> <a href="#message.types" class="smpl">generic-message</a> = <a href="#message.types" class="smpl">start-line</a> 1166 1187 *( <a href="#message.headers" class="smpl">message-header</a> <a href="#core.rules" class="smpl">CRLF</a> ) 1167 1188 <a href="#core.rules" class="smpl">CRLF</a> 1168 1189 [ <a href="#message.body" class="smpl">message-body</a> ] … … 1178 1199 security issues when implementations within the request chain interpret the same message differently. HTTP/1.1 servers <em class="bcp14">MUST</em> reject such a message with a 400 (Bad Request) response. 1179 1200 </p> 1180 1201 <h2 id="rfc.section.4.2"><a href="#rfc.section.4.2">4.2</a> <a id="message.headers" href="#message.headers">Message Headers</a></h2> 1181 <p id="rfc.section.4.2.p.1">HTTP header fields follow the same general format as Internet messages in <a href="http://tools.ietf.org/html/rfc5322#section-2.1">Section 2.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322. 3"><cite title="Internet Message Format">[RFC5322]</cite></a>. Each header field consists of a name followed by a colon (":"), optional whitespace, and the field value. Field names are1202 <p id="rfc.section.4.2.p.1">HTTP header fields follow the same general format as Internet messages in <a href="http://tools.ietf.org/html/rfc5322#section-2.1">Section 2.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>. Each header field consists of a name followed by a colon (":"), optional whitespace, and the field value. Field names are 1182 1203 case-insensitive. 1183 1204 </p> 1184 <div id="rfc.figure.u.3 0"></div><pre class="inline"><span id="rfc.iref.g.65"></span><span id="rfc.iref.g.66"></span><span id="rfc.iref.g.67"></span><span id="rfc.iref.g.68"></span> <a href="#message.headers" class="smpl">message-header</a> = <a href="#message.headers" class="smpl">field-name</a> ":" OWS [ <a href="#message.headers" class="smpl">field-value</a> ] OWS1205 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.71"></span><span id="rfc.iref.g.72"></span><span id="rfc.iref.g.73"></span><span id="rfc.iref.g.74"></span> <a href="#message.headers" class="smpl">message-header</a> = <a href="#message.headers" class="smpl">field-name</a> ":" OWS [ <a href="#message.headers" class="smpl">field-value</a> ] OWS 1185 1206 <a href="#message.headers" class="smpl">field-name</a> = <a href="#rule.token.separators" class="smpl">token</a> 1186 1207 <a href="#message.headers" class="smpl">field-value</a> = *( <a href="#message.headers" class="smpl">field-content</a> / <a href="#rule.whitespace" class="smpl">OWS</a> ) 1187 1208 <a href="#message.headers" class="smpl">field-content</a> = *( <a href="#core.rules" class="smpl">WSP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> ) … … 1206 1227 of the field value. 1207 1228 </p> 1208 1229 </div> 1209 <div id="rfc.figure.u.3 1"></div><pre class="inline"><span id="rfc.iref.g.69"></span><span id="rfc.iref.g.70"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")"1230 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.75"></span><span id="rfc.iref.g.76"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")" 1210 1231 <a href="#rule.comment" class="smpl">ctext</a> = <a href="#rule.whitespace" class="smpl">OWS</a> / %x21-27 / %x2A-5B / %x5D-7E / <a href="#rule.quoted-string" class="smpl">obs-text</a> 1211 1232 ; <a href="#rule.whitespace" class="smpl">OWS</a> / <<a href="#core.rules" class="smpl">VCHAR</a> except "(", ")", and "\"> / <a href="#rule.quoted-string" class="smpl">obs-text</a> 1212 1233 </pre><p id="rfc.section.4.2.p.9">The order in which header fields with differing field names are received is not significant. However, it is "good practice" … … 1229 1250 message-body differs from the entity-body only when a transfer-coding has been applied, as indicated by the Transfer-Encoding 1230 1251 header field (<a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.2" title="Transfer-Encoding">Section 8.7</a>). 1231 1252 </p> 1232 <div id="rfc.figure.u.3 2"></div><pre class="inline"><span id="rfc.iref.g.71"></span> <a href="#message.body" class="smpl">message-body</a> = <a href="#abnf.dependencies" class="smpl">entity-body</a>1253 <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.77"></span> <a href="#message.body" class="smpl">message-body</a> = <a href="#abnf.dependencies" class="smpl">entity-body</a> 1233 1254 / <entity-body encoded as per <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a>> 1234 1255 </pre><p id="rfc.section.4.3.p.3">Transfer-Encoding <em class="bcp14">MUST</em> be used to indicate any transfer-codings applied by an application to ensure safe and proper transfer of the message. Transfer-Encoding 1235 1256 is a property of the message, not of the entity, and thus <em class="bcp14">MAY</em> be added or removed by any application along the request/response chain. (However, <a href="#transfer.codings" title="Transfer Codings">Section 3.3</a> places restrictions on when certain transfer-codings may be used.) … … 1296 1317 <p id="rfc.section.4.5.p.1">There are a few header fields which have general applicability for both request and response messages, but which do not apply 1297 1318 to the entity being transferred. These header fields apply only to the message being transmitted. 1298 1319 </p> 1299 <div id="rfc.figure.u.3 3"></div><pre class="inline"><span id="rfc.iref.g.72"></span> <a href="#general.header.fields" class="smpl">general-header</a> = <a href="#abnf.dependencies" class="smpl">Cache-Control</a> ; <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a>1320 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.78"></span> <a href="#general.header.fields" class="smpl">general-header</a> = <a href="#abnf.dependencies" class="smpl">Cache-Control</a> ; <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a> 1300 1321 / <a href="#header.connection" class="smpl">Connection</a> ; <a href="#header.connection" id="rfc.xref.header.connection.1" title="Connection">Section 8.1</a> 1301 1322 / <a href="#header.date" class="smpl">Date</a> ; <a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 8.3</a> 1302 1323 / <a href="#abnf.dependencies" class="smpl">Pragma</a> ; <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.pragma" title="Pragma">Section 3.4</a> … … 1313 1334 <p id="rfc.section.5.p.1">A request message from a client to a server includes, within the first line of that message, the method to be applied to the 1314 1335 resource, the identifier of the resource, and the protocol version in use. 1315 1336 </p> 1316 <div id="rfc.figure.u.3 4"></div><pre class="inline"><span id="rfc.iref.g.73"></span> <a href="#request" class="smpl">Request</a> = <a href="#request-line" class="smpl">Request-Line</a> ; <a href="#request-line" title="Request-Line">Section 5.1</a>1337 <div id="rfc.figure.u.38"></div><pre class="inline"><span id="rfc.iref.g.79"></span> <a href="#request" class="smpl">Request</a> = <a href="#request-line" class="smpl">Request-Line</a> ; <a href="#request-line" title="Request-Line">Section 5.1</a> 1317 1338 *(( <a href="#general.header.fields" class="smpl">general-header</a> ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1318 1339 / <a href="#abnf.dependencies" class="smpl">request-header</a> ; <a href="#Part2" id="rfc.xref.Part2.4"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 3</a> 1319 1340 / <a href="#abnf.dependencies" class="smpl">entity-header</a> ) <a href="#core.rules" class="smpl">CRLF</a> ) ; <a href="#Part3" id="rfc.xref.Part3.8"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 3.1</a> … … 1323 1344 <p id="rfc.section.5.1.p.1">The Request-Line begins with a method token, followed by the request-target and the protocol version, and ending with CRLF. 1324 1345 The elements are separated by SP characters. No CR or LF is allowed except in the final CRLF sequence. 1325 1346 </p> 1326 <div id="rfc.figure.u.3 5"></div><pre class="inline"><span id="rfc.iref.g.74"></span> <a href="#request-line" class="smpl">Request-Line</a> = <a href="#method" class="smpl">Method</a> <a href="#core.rules" class="smpl">SP</a> <a href="#request-target" class="smpl">request-target</a> <a href="#core.rules" class="smpl">SP</a> <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">CRLF</a>1347 <div id="rfc.figure.u.39"></div><pre class="inline"><span id="rfc.iref.g.80"></span> <a href="#request-line" class="smpl">Request-Line</a> = <a href="#method" class="smpl">Method</a> <a href="#core.rules" class="smpl">SP</a> <a href="#request-target" class="smpl">request-target</a> <a href="#core.rules" class="smpl">SP</a> <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">CRLF</a> 1327 1348 </pre><h3 id="rfc.section.5.1.1"><a href="#rfc.section.5.1.1">5.1.1</a> <a id="method" href="#method">Method</a></h3> 1328 1349 <p id="rfc.section.5.1.1.p.1">The Method token indicates the method to be performed on the resource identified by the request-target. The method is case-sensitive.</p> 1329 <div id="rfc.figure.u. 36"></div><pre class="inline"><span id="rfc.iref.g.75"></span><span id="rfc.iref.g.76"></span> <a href="#method" class="smpl">Method</a> = <a href="#rule.token.separators" class="smpl">token</a>1350 <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span> <a href="#method" class="smpl">Method</a> = <a href="#rule.token.separators" class="smpl">token</a> 1330 1351 </pre><h3 id="rfc.section.5.1.2"><a href="#rfc.section.5.1.2">5.1.2</a> <a id="request-target" href="#request-target">request-target</a></h3> 1331 1352 <p id="rfc.section.5.1.2.p.1">The request-target identifies the resource upon which to apply the request.</p> 1332 <div id="rfc.figure.u. 37"></div><pre class="inline"><span id="rfc.iref.g.77"></span> <a href="#request-target" class="smpl">request-target</a> = "*"1353 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.83"></span> <a href="#request-target" class="smpl">request-target</a> = "*" 1333 1354 / <a href="#uri" class="smpl">absolute-URI</a> 1334 1355 / ( <a href="#uri" class="smpl">path-absolute</a> [ "?" <a href="#uri" class="smpl">query</a> ] ) 1335 1356 / <a href="#uri" class="smpl">authority</a> … … 1337 1358 not apply to a particular resource, but to the server itself, and is only allowed when the method used does not necessarily 1338 1359 apply to a resource. One example would be 1339 1360 </p> 1340 <div id="rfc.figure.u. 38"></div><pre class="text"> OPTIONS * HTTP/1.11361 <div id="rfc.figure.u.42"></div><pre class="text"> OPTIONS * HTTP/1.1 1341 1362 </pre><p id="rfc.section.5.1.2.p.5">The absolute-URI form is <em class="bcp14">REQUIRED</em> when the request is being made to a proxy. The proxy is requested to forward the request or service it from a valid cache, 1342 1363 and return the response. Note that the proxy <em class="bcp14">MAY</em> forward the request on to another proxy or directly to the server specified by the absolute-URI. In order to avoid request 1343 1364 loops, a proxy <em class="bcp14">MUST</em> be able to recognize all of its server names, including any aliases, local variations, and the numeric IP address. An example 1344 1365 Request-Line would be: 1345 1366 </p> 1346 <div id="rfc.figure.u. 39"></div><pre class="text"> GET http://www.example.org/pub/WWW/TheProject.html HTTP/1.11367 <div id="rfc.figure.u.43"></div><pre class="text"> GET http://www.example.org/pub/WWW/TheProject.html HTTP/1.1 1347 1368 </pre><p id="rfc.section.5.1.2.p.7">To allow for transition to absolute-URIs in all requests in future versions of HTTP, all HTTP/1.1 servers <em class="bcp14">MUST</em> accept the absolute-URI form in requests, even though HTTP/1.1 clients will only generate them in requests to proxies. 1348 1369 </p> 1349 1370 <p id="rfc.section.5.1.2.p.8">The authority form is only used by the CONNECT method (<a href="p2-semantics.html#CONNECT" title="CONNECT">Section 7.9</a> of <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>). … … 1352 1373 absolute path of the URI <em class="bcp14">MUST</em> be transmitted (see <a href="#http.uri" title="http URI scheme">Section 2.1.1</a>, path-absolute) as the request-target, and the network location of the URI (authority) <em class="bcp14">MUST</em> be transmitted in a Host header field. For example, a client wishing to retrieve the resource above directly from the origin 1353 1374 server would create a TCP connection to port 80 of the host "www.example.org" and send the lines: 1354 1375 </p> 1355 <div id="rfc.figure.u.4 0"></div><pre class="text"> GET /pub/WWW/TheProject.html HTTP/1.11376 <div id="rfc.figure.u.44"></div><pre class="text"> GET /pub/WWW/TheProject.html HTTP/1.1 1356 1377 Host: www.example.org 1357 1378 </pre><p id="rfc.section.5.1.2.p.11">followed by the remainder of the Request. Note that the absolute path cannot be empty; if none is present in the original 1358 1379 URI, it <em class="bcp14">MUST</em> be given as "/" (the server root). … … 1360 1381 <p id="rfc.section.5.1.2.p.12">If a proxy receives a request without any path in the request-target and the method specified is capable of supporting the 1361 1382 asterisk form of request-target, then the last proxy on the request chain <em class="bcp14">MUST</em> forward the request with "*" as the final request-target. 1362 1383 </p> 1363 <div id="rfc.figure.u.4 1"></div>1384 <div id="rfc.figure.u.45"></div> 1364 1385 <p>For example, the request</p><pre class="text"> OPTIONS http://www.example.org:8001 HTTP/1.1 1365 </pre><div id="rfc.figure.u.4 2"></div>1386 </pre><div id="rfc.figure.u.46"></div> 1366 1387 <p>would be forwarded by the proxy as</p><pre class="text"> OPTIONS * HTTP/1.1 1367 1388 Host: www.example.org:8001 1368 1389 </pre> <p>after connecting to port 8001 of host "www.example.org".</p> … … 1405 1426 </p> 1406 1427 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="response" href="#response">Response</a></h1> 1407 1428 <p id="rfc.section.6.p.1">After receiving and interpreting a request message, a server responds with an HTTP response message.</p> 1408 <div id="rfc.figure.u.4 3"></div><pre class="inline"><span id="rfc.iref.g.78"></span> <a href="#response" class="smpl">Response</a> = <a href="#status-line" class="smpl">Status-Line</a> ; <a href="#status-line" title="Status-Line">Section 6.1</a>1429 <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.84"></span> <a href="#response" class="smpl">Response</a> = <a href="#status-line" class="smpl">Status-Line</a> ; <a href="#status-line" title="Status-Line">Section 6.1</a> 1409 1430 *(( <a href="#general.header.fields" class="smpl">general-header</a> ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1410 1431 / <a href="#abnf.dependencies" class="smpl">response-header</a> ; <a href="#Part2" id="rfc.xref.Part2.7"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 5</a> 1411 1432 / <a href="#abnf.dependencies" class="smpl">entity-header</a> ) <a href="#core.rules" class="smpl">CRLF</a> ) ; <a href="#Part3" id="rfc.xref.Part3.9"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 3.1</a> … … 1416 1437 and its associated textual phrase, with each element separated by SP characters. No CR or LF is allowed except in the final 1417 1438 CRLF sequence. 1418 1439 </p> 1419 <div id="rfc.figure.u.4 4"></div><pre class="inline"><span id="rfc.iref.g.79"></span> <a href="#status-line" class="smpl">Status-Line</a> = <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> <a href="#core.rules" class="smpl">CRLF</a>1440 <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.85"></span> <a href="#status-line" class="smpl">Status-Line</a> = <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> <a href="#core.rules" class="smpl">CRLF</a> 1420 1441 </pre><h3 id="rfc.section.6.1.1"><a href="#rfc.section.6.1.1">6.1.1</a> <a id="status.code.and.reason.phrase" href="#status.code.and.reason.phrase">Status Code and Reason Phrase</a></h3> 1421 1442 <p id="rfc.section.6.1.1.p.1">The Status-Code element is a 3-digit integer result code of the attempt to understand and satisfy the request. These codes 1422 1443 are fully defined in <a href="p2-semantics.html#status.codes" title="Status Code Definitions">Section 8</a> of <a href="#Part2" id="rfc.xref.Part2.8"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>. The Reason Phrase exists for the sole purpose of providing a textual description associated with the numeric status code, … … 1433 1454 <li>4xx: Client Error - The request contains bad syntax or cannot be fulfilled</li> 1434 1455 <li>5xx: Server Error - The server failed to fulfill an apparently valid request</li> 1435 1456 </ul> 1436 <div id="rfc.figure.u.4 5"></div><pre class="inline"><span id="rfc.iref.g.80"></span><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a>1457 <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span><span id="rfc.iref.g.88"></span> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a> 1437 1458 <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> = *( <a href="#core.rules" class="smpl">WSP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> ) 1438 1459 </pre><h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="connections" href="#connections">Connections</a></h1> 1439 1460 <h2 id="rfc.section.7.1"><a href="#rfc.section.7.1">7.1</a> <a id="persistent.connections" href="#persistent.connections">Persistent Connections</a></h2> … … 1625 1646 and <em class="bcp14">MUST NOT</em> be communicated by proxies over further connections. 1626 1647 </p> 1627 1648 <p id="rfc.section.8.1.p.2">The Connection header's value has the following grammar:</p> 1628 <div id="rfc.figure.u. 46"></div><pre class="inline"><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span> <a href="#header.connection" class="smpl">Connection</a> = "Connection" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.connection" class="smpl">Connection-v</a>1649 <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g.89"></span><span id="rfc.iref.g.90"></span><span id="rfc.iref.g.91"></span> <a href="#header.connection" class="smpl">Connection</a> = "Connection" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.connection" class="smpl">Connection-v</a> 1629 1650 <a href="#header.connection" class="smpl">Connection-v</a> = 1#<a href="#header.connection" class="smpl">connection-token</a> 1630 1651 <a href="#header.connection" class="smpl">connection-token</a> = <a href="#rule.token.separators" class="smpl">token</a> 1631 1652 </pre><p id="rfc.section.8.1.p.4">HTTP/1.1 proxies <em class="bcp14">MUST</em> parse the Connection header field before a message is forwarded and, for each connection-token in this field, remove any header … … 1638 1659 <p id="rfc.section.8.1.p.6">HTTP/1.1 defines the "close" connection option for the sender to signal that the connection will be closed after completion 1639 1660 of the response. For example, 1640 1661 </p> 1641 <div id="rfc.figure.u. 47"></div><pre class="text"> Connection: close1662 <div id="rfc.figure.u.51"></div><pre class="text"> Connection: close 1642 1663 </pre><p id="rfc.section.8.1.p.8">in either the request or the response header fields indicates that the connection <em class="bcp14">SHOULD NOT</em> be considered `persistent' (<a href="#persistent.connections" title="Persistent Connections">Section 7.1</a>) after the current request/response is complete. 1643 1664 </p> 1644 1665 <p id="rfc.section.8.1.p.9">An HTTP/1.1 client that does not support persistent connections <em class="bcp14">MUST</em> include the "close" connection option in every request message. … … 1654 1675 <p id="rfc.section.8.2.p.1">The entity-header field "Content-Length" indicates the size of the entity-body, in number of OCTETs, sent to the recipient 1655 1676 or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET. 1656 1677 </p> 1657 <div id="rfc.figure.u. 48"></div><pre class="inline"><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = "Content-Length" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1*<a href="#header.content-length" class="smpl">Content-Length-v</a>1678 <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.92"></span><span id="rfc.iref.g.93"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = "Content-Length" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1*<a href="#header.content-length" class="smpl">Content-Length-v</a> 1658 1679 <a href="#header.content-length" class="smpl">Content-Length-v</a> = 1*<a href="#core.rules" class="smpl">DIGIT</a> 1659 1680 </pre><p id="rfc.section.8.2.p.3">An example is</p> 1660 <div id="rfc.figure.u. 49"></div><pre class="text"> Content-Length: 34951681 <div id="rfc.figure.u.53"></div><pre class="text"> Content-Length: 3495 1661 1682 </pre><p id="rfc.section.8.2.p.5">Applications <em class="bcp14">SHOULD</em> use this field to indicate the transfer-length of the message-body, unless this is prohibited by the rules in <a href="#message.length" title="Message Length">Section 4.4</a>. 1662 1683 </p> 1663 1684 <p id="rfc.section.8.2.p.6">Any Content-Length greater than or equal to zero is a valid value. <a href="#message.length" title="Message Length">Section 4.4</a> describes how to determine the length of a message-body if a Content-Length is not given. … … 1670 1691 <div id="rfc.iref.h.5"></div> 1671 1692 <h2 id="rfc.section.8.3"><a href="#rfc.section.8.3">8.3</a> <a id="header.date" href="#header.date">Date</a></h2> 1672 1693 <p id="rfc.section.8.3.p.1">The general-header field "Date" represents the date and time at which the message was originated, having the same semantics 1673 as orig-date 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. 4"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as described in <a href="#full.date" title="Full Date">Section 3.2.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format.1694 as orig-date 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.5"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as described in <a href="#full.date" title="Full Date">Section 3.2.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 1674 1695 </p> 1675 <div id="rfc.figure.u.5 0"></div><pre class="inline"><span id="rfc.iref.g.88"></span><span id="rfc.iref.g.89"></span> <a href="#header.date" class="smpl">Date</a> = "Date" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.date" class="smpl">Date-v</a>1696 <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.94"></span><span id="rfc.iref.g.95"></span> <a href="#header.date" class="smpl">Date</a> = "Date" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.date" class="smpl">Date-v</a> 1676 1697 <a href="#header.date" class="smpl">Date-v</a> = <a href="#full.date" class="smpl">HTTP-date</a> 1677 1698 </pre><p id="rfc.section.8.3.p.3">An example is</p> 1678 <div id="rfc.figure.u.5 1"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT1699 <div id="rfc.figure.u.55"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 1679 1700 </pre><p id="rfc.section.8.3.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 1680 1701 </p> 1681 1702 <ol> … … 1711 1732 gateway to differentiate between internally-ambiguous URLs, such as the root "/" URL of a server for multiple host names on 1712 1733 a single IP address. 1713 1734 </p> 1714 <div id="rfc.figure.u.5 2"></div><pre class="inline"><span id="rfc.iref.g.90"></span><span id="rfc.iref.g.91"></span> <a href="#header.host" class="smpl">Host</a> = "Host" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.host" class="smpl">Host-v</a>1735 <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.96"></span><span id="rfc.iref.g.97"></span> <a href="#header.host" class="smpl">Host</a> = "Host" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.host" class="smpl">Host-v</a> 1715 1736 <a href="#header.host" class="smpl">Host-v</a> = <a href="#uri" class="smpl">uri-host</a> [ ":" <a href="#uri" class="smpl">port</a> ] ; <a href="#http.uri" title="http URI scheme">Section 2.1.1</a> 1716 1737 </pre><p id="rfc.section.8.4.p.3">A "host" without any trailing port information implies the default port for the service requested (e.g., "80" for an HTTP 1717 1738 URL). For example, a request on the origin server for <http://www.example.org/pub/WWW/> would properly include: 1718 1739 </p> 1719 <div id="rfc.figure.u.5 3"></div><pre class="text"> GET /pub/WWW/ HTTP/1.11740 <div id="rfc.figure.u.57"></div><pre class="text"> GET /pub/WWW/ HTTP/1.1 1720 1741 Host: www.example.org 1721 1742 </pre><p id="rfc.section.8.4.p.5">A client <em class="bcp14">MUST</em> include a Host header field in all HTTP/1.1 request messages. If the requested URI does not include an Internet host name 1722 1743 for the service being requested, then the Host header field <em class="bcp14">MUST</em> be given with an empty value. An HTTP/1.1 proxy <em class="bcp14">MUST</em> ensure that any request message it forwards does contain an appropriate Host header field that identifies the service being … … 1731 1752 or not it is willing to accept trailer fields in a chunked transfer-coding. Its value may consist of the keyword "trailers" 1732 1753 and/or a comma-separated list of extension transfer-coding names with optional accept parameters (as described in <a href="#transfer.codings" title="Transfer Codings">Section 3.3</a>). 1733 1754 </p> 1734 <div id="rfc.figure.u.5 4"></div><pre class="inline"><span id="rfc.iref.g.92"></span><span id="rfc.iref.g.93"></span><span id="rfc.iref.g.94"></span><span id="rfc.iref.g.95"></span><span id="rfc.iref.g.96"></span> <a href="#header.te" class="smpl">TE</a> = "TE" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.te" class="smpl">TE-v</a>1755 <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.98"></span><span id="rfc.iref.g.99"></span><span id="rfc.iref.g.100"></span><span id="rfc.iref.g.101"></span><span id="rfc.iref.g.102"></span> <a href="#header.te" class="smpl">TE</a> = "TE" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.te" class="smpl">TE-v</a> 1735 1756 <a href="#header.te" class="smpl">TE-v</a> = #<a href="#header.te" class="smpl">t-codings</a> 1736 1757 <a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( <a href="#transfer.codings" class="smpl">transfer-extension</a> [ <a href="#header.te" class="smpl">te-params</a> ] ) 1737 1758 <a href="#header.te" class="smpl">te-params</a> = <a href="#rule.whitespace" class="smpl">OWS</a> ";" <a href="#rule.whitespace" class="smpl">OWS</a> "q=" <a href="#quality.values" class="smpl">qvalue</a> *( <a href="#header.te" class="smpl">te-ext</a> ) … … 1740 1761 as defined in <a href="#chunked.transfer.encoding" title="Chunked Transfer Coding">Section 3.3.1</a>. This keyword is reserved for use with transfer-coding values even though it does not itself represent a transfer-coding. 1741 1762 </p> 1742 1763 <p id="rfc.section.8.5.p.4">Examples of its use are:</p> 1743 <div id="rfc.figure.u.5 5"></div><pre class="text"> TE: deflate1764 <div id="rfc.figure.u.59"></div><pre class="text"> TE: deflate 1744 1765 TE: 1745 1766 TE: trailers, deflate;q=0.5 1746 1767 </pre><p id="rfc.section.8.5.p.6">The TE header field only applies to the immediate connection. Therefore, the keyword <em class="bcp14">MUST</em> be supplied within a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.4" title="Connection">Section 8.1</a>) whenever TE is present in an HTTP/1.1 message. … … 1777 1798 <p id="rfc.section.8.6.p.1">The general field "Trailer" indicates that the given set of header fields is present in the trailer of a message encoded with 1778 1799 chunked transfer-coding. 1779 1800 </p> 1780 <div id="rfc.figure.u. 56"></div><pre class="inline"><span id="rfc.iref.g.97"></span><span id="rfc.iref.g.98"></span> <a href="#header.trailer" class="smpl">Trailer</a> = "Trailer" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.trailer" class="smpl">Trailer-v</a>1801 <div id="rfc.figure.u.60"></div><pre class="inline"><span id="rfc.iref.g.103"></span><span id="rfc.iref.g.104"></span> <a href="#header.trailer" class="smpl">Trailer</a> = "Trailer" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.trailer" class="smpl">Trailer-v</a> 1781 1802 <a href="#header.trailer" class="smpl">Trailer-v</a> = 1#<a href="#message.headers" class="smpl">field-name</a> 1782 1803 </pre><p id="rfc.section.8.6.p.3">An HTTP/1.1 message <em class="bcp14">SHOULD</em> include a Trailer header field in a message using chunked transfer-coding with a non-empty trailer. Doing so allows the recipient 1783 1804 to know which header fields to expect in the trailer. … … 1798 1819 body in order to safely transfer it between the sender and the recipient. This differs from the content-coding in that the 1799 1820 transfer-coding is a property of the message, not of the entity. 1800 1821 </p> 1801 <div id="rfc.figure.u. 57"></div><pre class="inline"><span id="rfc.iref.g.99"></span><span id="rfc.iref.g.100"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = "Transfer-Encoding" ":" <a href="#rule.whitespace" class="smpl">OWS</a>1822 <div id="rfc.figure.u.61"></div><pre class="inline"><span id="rfc.iref.g.105"></span><span id="rfc.iref.g.106"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = "Transfer-Encoding" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1802 1823 <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> 1803 1824 <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> = 1#<a href="#transfer.codings" class="smpl">transfer-coding</a> 1804 1825 </pre><p id="rfc.section.8.7.p.3">Transfer-codings are defined in <a href="#transfer.codings" title="Transfer Codings">Section 3.3</a>. An example is: 1805 1826 </p> 1806 <div id="rfc.figure.u. 58"></div><pre class="text"> Transfer-Encoding: chunked1827 <div id="rfc.figure.u.62"></div><pre class="text"> Transfer-Encoding: chunked 1807 1828 </pre><p id="rfc.section.8.7.p.5">If multiple encodings have been applied to an entity, the transfer-codings <em class="bcp14">MUST</em> be listed in the order in which they were applied. Additional information about the encoding parameters <em class="bcp14">MAY</em> be provided by other entity-header fields not defined by this specification. 1808 1829 </p> 1809 1830 <p id="rfc.section.8.7.p.6">Many older HTTP/1.0 applications do not understand the Transfer-Encoding header.</p> … … 1813 1834 <p id="rfc.section.8.8.p.1">The general-header "Upgrade" allows the client to specify what additional communication protocols it supports and would like 1814 1835 to use if the server finds it appropriate to switch protocols. The server <em class="bcp14">MUST</em> use the Upgrade header field within a 101 (Switching Protocols) response to indicate which protocol(s) are being switched. 1815 1836 </p> 1816 <div id="rfc.figure.u. 59"></div><pre class="inline"><span id="rfc.iref.g.101"></span><span id="rfc.iref.g.102"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = "Upgrade" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.upgrade" class="smpl">Upgrade-v</a>1837 <div id="rfc.figure.u.63"></div><pre class="inline"><span id="rfc.iref.g.107"></span><span id="rfc.iref.g.108"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = "Upgrade" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.upgrade" class="smpl">Upgrade-v</a> 1817 1838 <a href="#header.upgrade" class="smpl">Upgrade-v</a> = 1#<a href="#product.tokens" class="smpl">product</a> 1818 1839 </pre><p id="rfc.section.8.8.p.3">For example,</p> 1819 <div id="rfc.figure.u.6 0"></div><pre class="text"> Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x111840 <div id="rfc.figure.u.64"></div><pre class="text"> Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11 1820 1841 </pre><p id="rfc.section.8.8.p.5">The Upgrade header field is intended to provide a simple mechanism for transition from HTTP/1.1 to some other, incompatible 1821 1842 protocol. It does so by allowing the client to advertise its desire to use another protocol, such as a later version of HTTP 1822 1843 with a higher major version number, even though the current request has been made using HTTP/1.1. This eases the difficult … … 1842 1863 <div id="rfc.iref.h.12"></div> 1843 1864 <h2 id="rfc.section.8.9"><a href="#rfc.section.8.9">8.9</a> <a id="header.via" href="#header.via">Via</a></h2> 1844 1865 <p id="rfc.section.8.9.p.1">The general-header field "Via" <em class="bcp14">MUST</em> be used by gateways and proxies to indicate the intermediate protocols and recipients between the user agent and the server 1845 on requests, and between the origin server and the client on responses. It is analogous to the "Received" field defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.7">Section 3.6.7</a> of <a href="#RFC5322" id="rfc.xref.RFC5322. 5"><cite title="Internet Message Format">[RFC5322]</cite></a> and is intended to be used for tracking message forwards, avoiding request loops, and identifying the protocol capabilities1866 on requests, and between the origin server and the client on responses. It is analogous to the "Received" field defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.7">Section 3.6.7</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.6"><cite title="Internet Message Format">[RFC5322]</cite></a> and is intended to be used for tracking message forwards, avoiding request loops, and identifying the protocol capabilities 1846 1867 of all senders along the request/response chain. 1847 1868 </p> 1848 <div id="rfc.figure.u.6 1"></div><pre class="inline"><span id="rfc.iref.g.103"></span><span id="rfc.iref.g.104"></span><span id="rfc.iref.g.105"></span><span id="rfc.iref.g.106"></span><span id="rfc.iref.g.107"></span><span id="rfc.iref.g.108"></span><span id="rfc.iref.g.109"></span> <a href="#header.via" class="smpl">Via</a> = "Via" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.via" class="smpl">Via-v</a>1869 <div id="rfc.figure.u.65"></div><pre class="inline"><span id="rfc.iref.g.109"></span><span id="rfc.iref.g.110"></span><span id="rfc.iref.g.111"></span><span id="rfc.iref.g.112"></span><span id="rfc.iref.g.113"></span><span id="rfc.iref.g.114"></span><span id="rfc.iref.g.115"></span> <a href="#header.via" class="smpl">Via</a> = "Via" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.via" class="smpl">Via-v</a> 1849 1870 <a href="#header.via" class="smpl">Via-v</a> = 1#( <a href="#header.via" class="smpl">received-protocol</a> <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#header.via" class="smpl">received-by</a> 1850 1871 [ <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#rule.comment" class="smpl">comment</a> ] ) 1851 1872 <a href="#header.via" class="smpl">received-protocol</a> = [ <a href="#header.via" class="smpl">protocol-name</a> "/" ] <a href="#header.via" class="smpl">protocol-version</a> … … 1870 1891 HTTP/1.1 to forward the request to a public proxy at p.example.net, which completes the request by forwarding it to the origin 1871 1892 server at www.example.com. The request received by www.example.com would then have the following Via header field: 1872 1893 </p> 1873 <div id="rfc.figure.u.6 2"></div><pre class="text"> Via: 1.0 fred, 1.1 p.example.net (Apache/1.1)1894 <div id="rfc.figure.u.66"></div><pre class="text"> Via: 1.0 fred, 1.1 p.example.net (Apache/1.1) 1874 1895 </pre><p id="rfc.section.8.9.p.9">Proxies and gateways used as a portal through a network firewall <em class="bcp14">SHOULD NOT</em>, by default, forward the names and ports of hosts within the firewall region. This information <em class="bcp14">SHOULD</em> only be propagated if explicitly enabled. If not enabled, the received-by host of any host behind the firewall <em class="bcp14">SHOULD</em> be replaced by an appropriate pseudonym for that host. 1875 1896 </p> 1876 1897 <p id="rfc.section.8.9.p.10">For organizations that have strong privacy requirements for hiding internal structures, a proxy <em class="bcp14">MAY</em> combine an ordered subsequence of Via header field entries with identical received-protocol values into a single such entry. 1877 1898 For example, 1878 1899 </p> 1879 <div id="rfc.figure.u.6 3"></div><pre class="text"> Via: 1.0 ricky, 1.1 ethel, 1.1 fred, 1.0 lucy1900 <div id="rfc.figure.u.67"></div><pre class="text"> Via: 1.0 ricky, 1.1 ethel, 1.1 fred, 1.0 lucy 1880 1901 </pre><p id="rfc.section.8.9.p.12">could be collapsed to</p> 1881 <div id="rfc.figure.u.6 4"></div><pre class="text"> Via: 1.0 ricky, 1.1 mertz, 1.0 lucy1902 <div id="rfc.figure.u.68"></div><pre class="text"> Via: 1.0 ricky, 1.1 mertz, 1.0 lucy 1882 1903 </pre><p id="rfc.section.8.9.p.14">Applications <em class="bcp14">SHOULD NOT</em> combine multiple entries unless they are all under the same organizational control and the hosts have already been replaced 1883 1904 by pseudonyms. Applications <em class="bcp14">MUST NOT</em> combine entries which have different received-protocol values. 1884 1905 </p> … … 2530 2551 entity-header fields and content in the form of an entity-body, as described in <a href="p3-payload.html#entity" title="Entity">Section 3</a> of <a href="#Part3" id="rfc.xref.Part3.13"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 2531 2552 </dd> 2532 2553 </dl> 2533 <p id="rfc.section.C.p.8"> <span id="rfc.iref.g.11 0"></span> <dfn>gateway</dfn>2554 <p id="rfc.section.C.p.8"> <span id="rfc.iref.g.116"></span> <dfn>gateway</dfn> 2534 2555 </p> 2535 2556 <dl class="empty"> 2536 2557 <dd>A server which acts as an intermediary for some other server. Unlike a proxy, a gateway receives requests as if it were the … … 2628 2649 </dd> 2629 2650 </dl> 2630 2651 <h1 id="rfc.section.D"><a href="#rfc.section.D">D.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 2631 <div id="rfc.figure.u.6 5"></div> <pre class="inline"><a href="#rule.whitespace" class="smpl">BWS</a> = OWS2652 <div id="rfc.figure.u.69"></div> <pre class="inline"><a href="#rule.whitespace" class="smpl">BWS</a> = OWS 2632 2653 2633 2654 <a href="#abnf.dependencies" class="smpl">Cache-Control</a> = <Cache-Control, defined in [Part6], Section 3.4> 2634 2655 <a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *chunk last-chunk trailer-part CRLF … … 2641 2662 <a href="#header.date" class="smpl">Date</a> = "Date:" OWS Date-v 2642 2663 <a href="#header.date" class="smpl">Date-v</a> = HTTP-date 2643 2664 2644 GMT= %x47.4D.542665 <a href="#preferred.date.format" class="smpl">GMT</a> = %x47.4D.54 2645 2666 2646 2667 <a href="#http.version" class="smpl">HTTP-Prot-Name</a> = %x48.54.54.50 2647 2668 <a href="#http.version" class="smpl">HTTP-Version</a> = HTTP-Prot-Name "/" 1*DIGIT "." 1*DIGIT 2648 <a href="#full.date" class="smpl">HTTP-date</a> = rfc1123-date / obs olete-date2669 <a href="#full.date" class="smpl">HTTP-date</a> = rfc1123-date / obs-date 2649 2670 <a href="#message.types" class="smpl">HTTP-message</a> = Request / Response 2650 2671 <a href="#header.host" class="smpl">Host</a> = "Host:" OWS Host-v 2651 2672 <a href="#header.host" class="smpl">Host-v</a> = uri-host [ ":" port ] … … 2688 2709 <a href="#abnf.dependencies" class="smpl">Warning</a> = <Warning, defined in [Part6], Section 3.6> 2689 2710 2690 2711 <a href="#uri" class="smpl">absolute-URI</a> = <absolute-URI, defined in [RFC3986], Section 4.3> 2691 <a href="# full.date" class="smpl">asctime-date</a> = wkday SP date3 SP time SP 4DIGIT2712 <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = day-name SP date3 SP time-of-day SP year 2692 2713 <a href="#rule.parameter" class="smpl">attribute</a> = token 2693 2714 <a href="#uri" class="smpl">authority</a> = <authority, defined in [RFC3986], Section 3.2> 2694 2715 … … 2702 2723 <a href="#header.connection" class="smpl">connection-token</a> = token 2703 2724 <a href="#rule.comment" class="smpl">ctext</a> = OWS / %x21-27 / %x2A-5B / %x5D-7E / obs-text 2704 2725 2705 <a href="#full.date" class="smpl">date1</a> = 2DIGIT SP month SP 4DIGIT 2706 <a href="#full.date" class="smpl">date2</a> = 2DIGIT "-" month "-" 2DIGIT 2707 <a href="#full.date" class="smpl">date3</a> = month SP ( 2DIGIT / ( SP DIGIT ) ) 2726 <a href="#obsolete.date.formats" class="smpl">date1</a> = day SP month SP year 2727 <a href="#obsolete.date.formats" class="smpl">date2</a> = day "-" month "-" 2DIGIT 2728 <a href="#obsolete.date.formats" class="smpl">date3</a> = month SP ( 2DIGIT / ( SP DIGIT ) ) 2729 <a href="#preferred.date.format" class="smpl">day</a> = 2DIGIT 2730 <a href="#preferred.date.format" class="smpl">day-name</a> = s-Mon / s-Tue / s-Wed / s-Thu / s-Fri / s-Sat / s-Sun 2731 <a href="#obsolete.date.formats" class="smpl">day-name-l</a> = l-Mon / l-Tue / l-Wed / l-Thu / l-Fri / l-Sat / l-Sun 2708 2732 2709 2733 <a href="#abnf.dependencies" class="smpl">entity-body</a> = <entity-body, defined in [Part3], Section 3.2> 2710 2734 <a href="#abnf.dependencies" class="smpl">entity-header</a> = <entity-header, defined in [Part3], Section 3.1> … … 2719 2743 <a href="#message.types" class="smpl">generic-message</a> = start-line *( message-header CRLF ) CRLF [ 2720 2744 message-body ] 2721 2745 2746 <a href="#preferred.date.format" class="smpl">hour</a> = 2DIGIT 2722 2747 <a href="#http.uri" class="smpl">http-URI</a> = "http://" authority path-abempty [ "?" query ] 2723 2748 2724 2749 l-Fri = %x46.72.69.64.61.79 … … 2733 2758 <a href="#message.body" class="smpl">message-body</a> = entity-body / 2734 2759 <entity-body encoded as per Transfer-Encoding> 2735 2760 <a href="#message.headers" class="smpl">message-header</a> = field-name ":" OWS [ field-value ] OWS 2736 <a href="#full.date" class="smpl">month</a> = s-Jan / s-Feb / s-Mar / s-Apr / s-May / s-Jun / s-Jul / s-Aug 2761 <a href="#preferred.date.format" class="smpl">minute</a> = 2DIGIT 2762 <a href="#preferred.date.format" class="smpl">month</a> = s-Jan / s-Feb / s-Mar / s-Apr / s-May / s-Jun / s-Jul / s-Aug 2737 2763 / s-Sep / s-Oct / s-Nov / s-Dec 2738 2764 2765 <a href="#obsolete.date.formats" class="smpl">obs-date</a> = rfc850-date / asctime-date 2739 2766 <a href="#rule.whitespace" class="smpl">obs-fold</a> = CRLF 2740 2767 <a href="#rule.quoted-string" class="smpl">obs-text</a> = %x80-FF 2741 <a href="#full.date" class="smpl">obsolete-date</a> = rfc850-date / asctime-date2742 2768 2743 2769 <a href="#transfer.codings" class="smpl">parameter</a> = attribute BWS "=" BWS value 2744 2770 <a href="#uri" class="smpl">partial-URI</a> = relative-part [ "?" query ] … … 2765 2791 <a href="#request-target" class="smpl">request-target</a> = "*" / absolute-URI / ( path-absolute [ "?" query ] ) 2766 2792 / authority 2767 2793 <a href="#abnf.dependencies" class="smpl">response-header</a> = <response-header, defined in [Part2], Section 5> 2768 <a href="# full.date" class="smpl">rfc1123-date</a> = wkday "," SP date1 SP timeSP GMT2769 <a href="# full.date" class="smpl">rfc850-date</a> = weekday "," SP date2 SP timeSP GMT2794 <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = day-name "," SP date1 SP time-of-day SP GMT 2795 <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = day-name-l "," SP date2 SP time-of-day SP GMT 2770 2796 2771 2797 s-Apr = %x41.70.72 2772 2798 s-Aug = %x41.75.67 … … 2787 2813 s-Thu = %x54.68.75 2788 2814 s-Tue = %x54.75.65 2789 2815 s-Wed = %x57.65.64 2816 <a href="#preferred.date.format" class="smpl">second</a> = 2DIGIT 2790 2817 <a href="#message.types" class="smpl">start-line</a> = Request-Line / Status-Line 2791 2818 2792 2819 <a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( transfer-extension [ te-params ] ) … … 2794 2821 "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA 2795 2822 <a href="#header.te" class="smpl">te-ext</a> = OWS ";" OWS token [ "=" ( token / quoted-string ) ] 2796 2823 <a href="#header.te" class="smpl">te-params</a> = OWS ";" OWS "q=" qvalue *te-ext 2797 <a href="# full.date" class="smpl">time</a> = 2DIGIT ":" 2DIGIT ":" 2DIGIT2824 <a href="#preferred.date.format" class="smpl">time-of-day</a> = hour ":" minute ":" second 2798 2825 <a href="#rule.token.separators" class="smpl">token</a> = 1*tchar 2799 2826 <a href="#chunked.transfer.encoding" class="smpl">trailer-part</a> = *( entity-header CRLF ) 2800 2827 <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / transfer-extension … … 2804 2831 2805 2832 <a href="#rule.parameter" class="smpl">value</a> = token / quoted-string 2806 2833 2807 <a href="#full.date" class="smpl">weekday</a> = l-Mon / l-Tue / l-Wed / l-Thu / l-Fri / l-Sat / l-Sun 2808 <a href="#full.date" class="smpl">wkday</a> = s-Mon / s-Tue / s-Wed / s-Thu / s-Fri / s-Sat / s-Sun 2834 <a href="#preferred.date.format" class="smpl">year</a> = 4DIGIT 2809 2835 2810 2836 2811 </pre> <div id="rfc.figure.u. 66"></div>2837 </pre> <div id="rfc.figure.u.70"></div> 2812 2838 <p>ABNF diagnostics:</p><pre class="inline">; Chunked-Body defined but not used 2813 2839 ; Content-Length defined but not used 2814 2840 ; HTTP-message defined but not used … … 3033 3059 </ul> 3034 3060 </li> 3035 3061 <li class="indline0"><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul class="ind"> 3036 <li class="indline1">gateway <a class="iref" href="#rfc.iref.g.11 0">C</a></li>3062 <li class="indline1">gateway <a class="iref" href="#rfc.iref.g.116">C</a></li> 3037 3063 <li class="indline1"><tt>Grammar</tt> 3038 3064 <ul class="ind"> 3039 3065 <li class="indline1"><tt>absolute-URI</tt> <a class="iref" href="#rfc.iref.g.24"><b>2.1</b></a></li> 3040 3066 <li class="indline1">ALPHA <a class="iref" href="#rfc.iref.g.1"><b>1.2</b></a></li> 3041 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g. 37"><b>3.2.1</b></a></li>3042 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g. 48"><b>3.3</b></a></li>3067 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g.48"><b>3.2.1</b></a></li> 3068 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g.52"><b>3.3</b></a></li> 3043 3069 <li class="indline1"><tt>authority</tt> <a class="iref" href="#rfc.iref.g.25"><b>2.1</b></a></li> 3044 3070 <li class="indline1"><tt>BWS</tt> <a class="iref" href="#rfc.iref.g.15"><b>1.2.2</b></a></li> 3045 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.5 1"><b>3.3.1</b></a></li>3046 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g. 57"><b>3.3.1</b></a></li>3047 <li class="indline1"><tt>chunk-ext</tt> <a class="iref" href="#rfc.iref.g. 54"><b>3.3.1</b></a></li>3048 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g. 55"><b>3.3.1</b></a></li>3049 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g. 56"><b>3.3.1</b></a></li>3050 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.5 2"><b>3.3.1</b></a></li>3051 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.5 0"><b>3.3.1</b></a></li>3052 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g. 69"><b>4.2</b></a></li>3053 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g.8 3"><b>8.1</b></a></li>3054 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g. 85"><b>8.1</b></a></li>3055 <li class="indline1"><tt>Connection-v</tt> <a class="iref" href="#rfc.iref.g. 84"><b>8.1</b></a></li>3056 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g. 86"><b>8.2</b></a></li>3057 <li class="indline1"><tt>Content-Length-v</tt> <a class="iref" href="#rfc.iref.g. 87"><b>8.2</b></a></li>3071 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.57"><b>3.3.1</b></a></li> 3072 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g.63"><b>3.3.1</b></a></li> 3073 <li class="indline1"><tt>chunk-ext</tt> <a class="iref" href="#rfc.iref.g.60"><b>3.3.1</b></a></li> 3074 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g.61"><b>3.3.1</b></a></li> 3075 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g.62"><b>3.3.1</b></a></li> 3076 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.58"><b>3.3.1</b></a></li> 3077 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.56"><b>3.3.1</b></a></li> 3078 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g.75"><b>4.2</b></a></li> 3079 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g.89"><b>8.1</b></a></li> 3080 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g.91"><b>8.1</b></a></li> 3081 <li class="indline1"><tt>Connection-v</tt> <a class="iref" href="#rfc.iref.g.90"><b>8.1</b></a></li> 3082 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g.92"><b>8.2</b></a></li> 3083 <li class="indline1"><tt>Content-Length-v</tt> <a class="iref" href="#rfc.iref.g.93"><b>8.2</b></a></li> 3058 3084 <li class="indline1">CR <a class="iref" href="#rfc.iref.g.2"><b>1.2</b></a></li> 3059 3085 <li class="indline1">CRLF <a class="iref" href="#rfc.iref.g.3"><b>1.2</b></a></li> 3060 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g.7 0"><b>4.2</b></a></li>3086 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g.76"><b>4.2</b></a></li> 3061 3087 <li class="indline1">CTL <a class="iref" href="#rfc.iref.g.4"><b>1.2</b></a></li> 3062 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.88"><b>8.3</b></a></li> 3063 <li class="indline1"><tt>Date-v</tt> <a class="iref" href="#rfc.iref.g.89"><b>8.3</b></a></li> 3064 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g.38"><b>3.2.1</b></a></li> 3065 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.39"><b>3.2.1</b></a></li> 3066 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.40"><b>3.2.1</b></a></li> 3088 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.94"><b>8.3</b></a></li> 3089 <li class="indline1"><tt>Date-v</tt> <a class="iref" href="#rfc.iref.g.95"><b>8.3</b></a></li> 3090 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g.35"><b>3.2.1</b></a></li> 3091 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.54"><b>3.3</b></a></li> 3092 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.55"><b>3.3</b></a></li> 3093 <li class="indline1"><tt>day</tt> <a class="iref" href="#rfc.iref.g.42"><b>3.2.1</b></a></li> 3094 <li class="indline1"><tt>day-name</tt> <a class="iref" href="#rfc.iref.g.40"><b>3.2.1</b></a></li> 3095 <li class="indline1"><tt>day-name-l</tt> <a class="iref" href="#rfc.iref.g.41"><b>3.2.1</b></a></li> 3067 3096 <li class="indline1">DIGIT <a class="iref" href="#rfc.iref.g.5"><b>1.2</b></a></li> 3068 3097 <li class="indline1">DQUOTE <a class="iref" href="#rfc.iref.g.6"><b>1.2</b></a></li> 3069 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g.81"><b>6.1.1</b></a></li> 3070 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.76"><b>5.1.1</b></a></li> 3071 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.68"><b>4.2</b></a></li> 3072 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.66"><b>4.2</b></a></li> 3073 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.67"><b>4.2</b></a></li> 3074 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.72"><b>4.5</b></a></li> 3075 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g.63"><b>4.1</b></a></li> 3098 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g.87"><b>6.1.1</b></a></li> 3099 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.82"><b>5.1.1</b></a></li> 3100 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.74"><b>4.2</b></a></li> 3101 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.72"><b>4.2</b></a></li> 3102 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.73"><b>4.2</b></a></li> 3103 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.78"><b>4.5</b></a></li> 3104 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g.69"><b>4.1</b></a></li> 3105 <li class="indline1"><tt>GMT</tt> <a class="iref" href="#rfc.iref.g.45"><b>3.2.1</b></a></li> 3076 3106 <li class="indline1">HEXDIG <a class="iref" href="#rfc.iref.g.7"><b>1.2</b></a></li> 3077 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.90"><b>8.4</b></a></li> 3078 <li class="indline1"><tt>Host-v</tt> <a class="iref" href="#rfc.iref.g.91"><b>8.4</b></a></li> 3107 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.96"><b>8.4</b></a></li> 3108 <li class="indline1"><tt>Host-v</tt> <a class="iref" href="#rfc.iref.g.97"><b>8.4</b></a></li> 3109 <li class="indline1"><tt>hour</tt> <a class="iref" href="#rfc.iref.g.37"><b>3.2.1</b></a></li> 3079 3110 <li class="indline1"><tt>HTTP-date</tt> <a class="iref" href="#rfc.iref.g.33"><b>3.2.1</b></a></li> 3080 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.6 2"><b>4.1</b></a></li>3111 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.68"><b>4.1</b></a></li> 3081 3112 <li class="indline1"><tt>HTTP-Prot-Name</tt> <a class="iref" href="#rfc.iref.g.32"><b>3.1</b></a></li> 3082 3113 <li class="indline1"><tt>http-URI</tt> <a class="iref" href="#rfc.iref.g.30"><b>2.1.1</b></a></li> 3083 3114 <li class="indline1"><tt>HTTP-Version</tt> <a class="iref" href="#rfc.iref.g.31"><b>3.1</b></a></li> 3084 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.5 3"><b>3.3.1</b></a></li>3115 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.59"><b>3.3.1</b></a></li> 3085 3116 <li class="indline1">LF <a class="iref" href="#rfc.iref.g.8"><b>1.2</b></a></li> 3086 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g.71"><b>4.3</b></a></li> 3087 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.65"><b>4.2</b></a></li> 3088 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.75"><b>5.1.1</b></a></li> 3089 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.44"><b>3.2.1</b></a></li> 3117 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g.77"><b>4.3</b></a></li> 3118 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.71"><b>4.2</b></a></li> 3119 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.81"><b>5.1.1</b></a></li> 3120 <li class="indline1"><tt>minute</tt> <a class="iref" href="#rfc.iref.g.38"><b>3.2.1</b></a></li> 3121 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.43"><b>3.2.1</b></a></li> 3122 <li class="indline1"><tt>obs-date</tt> <a class="iref" href="#rfc.iref.g.46"><b>3.2.1</b></a></li> 3090 3123 <li class="indline1"><tt>obs-text</tt> <a class="iref" href="#rfc.iref.g.20"><b>1.2.2</b></a></li> 3091 <li class="indline1"><tt>obsolete-date</tt> <a class="iref" href="#rfc.iref.g.35"><b>3.2.1</b></a></li>3092 3124 <li class="indline1">OCTET <a class="iref" href="#rfc.iref.g.9"><b>1.2</b></a></li> 3093 3125 <li class="indline1"><tt>OWS</tt> <a class="iref" href="#rfc.iref.g.13"><b>1.2.2</b></a></li> 3094 <li class="indline1"><tt>parameter</tt> <a class="iref" href="#rfc.iref.g. 47"><b>3.3</b></a></li>3126 <li class="indline1"><tt>parameter</tt> <a class="iref" href="#rfc.iref.g.51"><b>3.3</b></a></li> 3095 3127 <li class="indline1"><tt>path-absolute</tt> <a class="iref" href="#rfc.iref.g.26"><b>2.1</b></a></li> 3096 3128 <li class="indline1"><tt>port</tt> <a class="iref" href="#rfc.iref.g.27"><b>2.1</b></a></li> 3097 <li class="indline1"><tt>product</tt> <a class="iref" href="#rfc.iref.g. 59"><b>3.4</b></a></li>3098 <li class="indline1"><tt>product-version</tt> <a class="iref" href="#rfc.iref.g.6 0"><b>3.4</b></a></li>3099 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.1 06"><b>8.9</b></a></li>3100 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.1 07"><b>8.9</b></a></li>3101 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.1 09"><b>8.9</b></a></li>3129 <li class="indline1"><tt>product</tt> <a class="iref" href="#rfc.iref.g.65"><b>3.4</b></a></li> 3130 <li class="indline1"><tt>product-version</tt> <a class="iref" href="#rfc.iref.g.66"><b>3.4</b></a></li> 3131 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.112"><b>8.9</b></a></li> 3132 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.113"><b>8.9</b></a></li> 3133 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.115"><b>8.9</b></a></li> 3102 3134 <li class="indline1"><tt>qdtext</tt> <a class="iref" href="#rfc.iref.g.19"><b>1.2.2</b></a></li> 3103 3135 <li class="indline1"><tt>query</tt> <a class="iref" href="#rfc.iref.g.28"><b>2.1</b></a></li> 3104 3136 <li class="indline1"><tt>quoted-pair</tt> <a class="iref" href="#rfc.iref.g.22"><b>1.2.2</b></a></li> 3105 3137 <li class="indline1"><tt>quoted-string</tt> <a class="iref" href="#rfc.iref.g.18"><b>1.2.2</b></a></li> 3106 3138 <li class="indline1"><tt>quoted-text</tt> <a class="iref" href="#rfc.iref.g.21"><b>1.2.2</b></a></li> 3107 <li class="indline1"><tt>qvalue</tt> <a class="iref" href="#rfc.iref.g.6 1"><b>3.5</b></a></li>3108 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g.8 2"><b>6.1.1</b></a></li>3109 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.1 08"><b>8.9</b></a></li>3110 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.1 05"><b>8.9</b></a></li>3111 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g.7 3"><b>5</b></a></li>3112 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g. 74"><b>5.1</b></a></li>3113 <li class="indline1"><tt>request-target</tt> <a class="iref" href="#rfc.iref.g. 77"><b>5.1.2</b></a></li>3114 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g. 78"><b>6</b></a></li>3139 <li class="indline1"><tt>qvalue</tt> <a class="iref" href="#rfc.iref.g.67"><b>3.5</b></a></li> 3140 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g.88"><b>6.1.1</b></a></li> 3141 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.114"><b>8.9</b></a></li> 3142 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.111"><b>8.9</b></a></li> 3143 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g.79"><b>5</b></a></li> 3144 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g.80"><b>5.1</b></a></li> 3145 <li class="indline1"><tt>request-target</tt> <a class="iref" href="#rfc.iref.g.83"><b>5.1.2</b></a></li> 3146 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g.84"><b>6</b></a></li> 3115 3147 <li class="indline1"><tt>rfc1123-date</tt> <a class="iref" href="#rfc.iref.g.34"><b>3.2.1</b></a></li> 3116 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g. 36"><b>3.2.1</b></a></li>3148 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g.47"><b>3.2.1</b></a></li> 3117 3149 <li class="indline1"><tt>RWS</tt> <a class="iref" href="#rfc.iref.g.14"><b>1.2.2</b></a></li> 3150 <li class="indline1"><tt>second</tt> <a class="iref" href="#rfc.iref.g.39"><b>3.2.1</b></a></li> 3118 3151 <li class="indline1">SP <a class="iref" href="#rfc.iref.g.10"><b>1.2</b></a></li> 3119 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g. 64"><b>4.1</b></a></li>3120 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.8 0"><b>6.1.1</b></a></li>3121 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g. 79"><b>6.1</b></a></li>3122 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g. 94"><b>8.5</b></a></li>3152 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g.70"><b>4.1</b></a></li> 3153 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.86"><b>6.1.1</b></a></li> 3154 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g.85"><b>6.1</b></a></li> 3155 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g.100"><b>8.5</b></a></li> 3123 3156 <li class="indline1"><tt>tchar</tt> <a class="iref" href="#rfc.iref.g.17"><b>1.2.2</b></a></li> 3124 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.9 2"><b>8.5</b></a></li>3125 <li class="indline1"><tt>te-ext</tt> <a class="iref" href="#rfc.iref.g. 96"><b>8.5</b></a></li>3126 <li class="indline1"><tt>te-params</tt> <a class="iref" href="#rfc.iref.g. 95"><b>8.5</b></a></li>3127 <li class="indline1"><tt>TE-v</tt> <a class="iref" href="#rfc.iref.g.9 3"><b>8.5</b></a></li>3128 <li class="indline1"><tt>time </tt> <a class="iref" href="#rfc.iref.g.41"><b>3.2.1</b></a></li>3157 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.98"><b>8.5</b></a></li> 3158 <li class="indline1"><tt>te-ext</tt> <a class="iref" href="#rfc.iref.g.102"><b>8.5</b></a></li> 3159 <li class="indline1"><tt>te-params</tt> <a class="iref" href="#rfc.iref.g.101"><b>8.5</b></a></li> 3160 <li class="indline1"><tt>TE-v</tt> <a class="iref" href="#rfc.iref.g.99"><b>8.5</b></a></li> 3161 <li class="indline1"><tt>time-of-day</tt> <a class="iref" href="#rfc.iref.g.36"><b>3.2.1</b></a></li> 3129 3162 <li class="indline1"><tt>token</tt> <a class="iref" href="#rfc.iref.g.16"><b>1.2.2</b></a></li> 3130 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g. 97"><b>8.6</b></a></li>3131 <li class="indline1"><tt>trailer-part</tt> <a class="iref" href="#rfc.iref.g. 58"><b>3.3.1</b></a></li>3132 <li class="indline1"><tt>Trailer-v</tt> <a class="iref" href="#rfc.iref.g. 98"><b>8.6</b></a></li>3133 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g.4 5"><b>3.3</b></a></li>3134 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g. 99"><b>8.7</b></a></li>3135 <li class="indline1"><tt>Transfer-Encoding-v</tt> <a class="iref" href="#rfc.iref.g.10 0"><b>8.7</b></a></li>3136 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g. 46"><b>3.3</b></a></li>3137 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g.10 1"><b>8.8</b></a></li>3138 <li class="indline1"><tt>Upgrade-v</tt> <a class="iref" href="#rfc.iref.g.10 2"><b>8.8</b></a></li>3163 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g.103"><b>8.6</b></a></li> 3164 <li class="indline1"><tt>trailer-part</tt> <a class="iref" href="#rfc.iref.g.64"><b>3.3.1</b></a></li> 3165 <li class="indline1"><tt>Trailer-v</tt> <a class="iref" href="#rfc.iref.g.104"><b>8.6</b></a></li> 3166 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g.49"><b>3.3</b></a></li> 3167 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g.105"><b>8.7</b></a></li> 3168 <li class="indline1"><tt>Transfer-Encoding-v</tt> <a class="iref" href="#rfc.iref.g.106"><b>8.7</b></a></li> 3169 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g.50"><b>3.3</b></a></li> 3170 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g.107"><b>8.8</b></a></li> 3171 <li class="indline1"><tt>Upgrade-v</tt> <a class="iref" href="#rfc.iref.g.108"><b>8.8</b></a></li> 3139 3172 <li class="indline1"><tt>uri-host</tt> <a class="iref" href="#rfc.iref.g.29"><b>2.1</b></a></li> 3140 3173 <li class="indline1"><tt>URI-reference</tt> <a class="iref" href="#rfc.iref.g.23"><b>2.1</b></a></li> 3141 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g. 49"><b>3.3</b></a></li>3174 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g.53"><b>3.3</b></a></li> 3142 3175 <li class="indline1">VCHAR <a class="iref" href="#rfc.iref.g.11"><b>1.2</b></a></li> 3143 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.103"><b>8.9</b></a></li> 3144 <li class="indline1"><tt>Via-v</tt> <a class="iref" href="#rfc.iref.g.104"><b>8.9</b></a></li> 3145 <li class="indline1"><tt>weekday</tt> <a class="iref" href="#rfc.iref.g.43"><b>3.2.1</b></a></li> 3146 <li class="indline1"><tt>wkday</tt> <a class="iref" href="#rfc.iref.g.42"><b>3.2.1</b></a></li> 3176 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.109"><b>8.9</b></a></li> 3177 <li class="indline1"><tt>Via-v</tt> <a class="iref" href="#rfc.iref.g.110"><b>8.9</b></a></li> 3147 3178 <li class="indline1">WSP <a class="iref" href="#rfc.iref.g.12"><b>1.2</b></a></li> 3179 <li class="indline1"><tt>year</tt> <a class="iref" href="#rfc.iref.g.44"><b>3.2.1</b></a></li> 3148 3180 </ul> 3149 3181 </li> 3150 3182 </ul> … … 3275 3307 <li class="indline1"><em>Appendix B.1</em> <a class="iref" href="#rfc.xref.RFC5234.2">1.2</a></li> 3276 3308 </ul> 3277 3309 </li> 3278 <li class="indline1"><em>RFC5322</em> <a class="iref" href="#rfc.xref.RFC5322.1">1</a>, <a class="iref" href="#rfc.xref.RFC5322.2">4.1</a>, <a class="iref" href="#rfc.xref.RFC5322.3">4.2</a>, <a class="iref" href="#rfc.xref.RFC5322.4">8.3</a>, <a class="iref" href="#rfc.xref.RFC5322.5">8.9</a>, <a class="iref" href="#RFC5322"><b>12.2</b></a><ul class="ind"> 3279 <li class="indline1"><em>Section 2.1</em> <a class="iref" href="#rfc.xref.RFC5322.3">4.2</a></li> 3280 <li class="indline1"><em>Section 3.6.1</em> <a class="iref" href="#rfc.xref.RFC5322.4">8.3</a></li> 3281 <li class="indline1"><em>Section 3.6.7</em> <a class="iref" href="#rfc.xref.RFC5322.5">8.9</a></li> 3310 <li class="indline1"><em>RFC5322</em> <a class="iref" href="#rfc.xref.RFC5322.1">1</a>, <a class="iref" href="#rfc.xref.RFC5322.2">3.2.1</a>, <a class="iref" href="#rfc.xref.RFC5322.3">4.1</a>, <a class="iref" href="#rfc.xref.RFC5322.4">4.2</a>, <a class="iref" href="#rfc.xref.RFC5322.5">8.3</a>, <a class="iref" href="#rfc.xref.RFC5322.6">8.9</a>, <a class="iref" href="#RFC5322"><b>12.2</b></a><ul class="ind"> 3311 <li class="indline1"><em>Section 2.1</em> <a class="iref" href="#rfc.xref.RFC5322.4">4.2</a></li> 3312 <li class="indline1"><em>Section 3.6.1</em> <a class="iref" href="#rfc.xref.RFC5322.5">8.3</a></li> 3313 <li class="indline1"><em>Section 3.6.7</em> <a class="iref" href="#rfc.xref.RFC5322.6">8.9</a></li> 3314 <li class="indline1"><em>Section 3.3</em> <a class="iref" href="#rfc.xref.RFC5322.2">3.2.1</a></li> 3282 3315 </ul> 3283 3316 </li> 3284 3317 </ul>