Changeset 154
- Timestamp:
- 05/01/08 14:13:28 (15 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p1-messaging.html
r153 r154 853 853 <dd>The name of a rule is simply the name itself (without any enclosing "<" and ">") and is separated from its definition by the 854 854 equal "=" character. White space is only significant in that indentation of continuation lines is used to indicate a rule 855 definition that spans more than one line. Certain basic rules are in uppercase, such as SP, LWS, HT , CRLF, DIGIT, ALPHA, etc.856 Angle brackets are used within definitions whenever their presence will facilitate discerning the use of rule names.855 definition that spans more than one line. Certain basic rules are in uppercase, such as SP, LWS, HTAB, CRLF, DIGIT, ALPHA, 856 etc. Angle brackets are used within definitions whenever their presence will facilitate discerning the use of rule names. 857 857 </dd> 858 858 </dl> … … 920 920 set is defined by ANSI X3.4-1986 <a href="#USASCII" id="rfc.xref.USASCII.1"><cite title="Coded Character Set -- 7-bit American Standard Code for Information Interchange">[USASCII]</cite></a>. 921 921 </p> 922 <div id="rfc.figure.u.4"></div><pre class="inline"><span id="rfc.iref.g.2"></span><span id="rfc.iref.g.3"></span><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span><span id="rfc.iref.g.11"></span><span id="rfc.iref.g.12"></span> OCTET = <any 8-bit sequence of data>922 <div id="rfc.figure.u.4"></div><pre class="inline"><span id="rfc.iref.g.2"></span><span id="rfc.iref.g.3"></span><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span><span id="rfc.iref.g.11"></span><span id="rfc.iref.g.12"></span><span id="rfc.iref.g.13"></span> OCTET = <any 8-bit sequence of data> 923 923 CHAR = <any US-ASCII character (octets 0 - 127)> 924 924 UPALPHA = <any US-ASCII uppercase letter "A".."Z"> … … 931 931 LF = <US-ASCII LF, linefeed (10)> 932 932 SP = <US-ASCII SP, space (32)> 933 HT 934 <">= <US-ASCII double-quote mark (34)>933 HTAB = <US-ASCII HT, horizontal-tab (9)> 934 DQUOTE = <US-ASCII double-quote mark (34)> 935 935 </pre><p id="rfc.section.2.2.p.3">HTTP/1.1 defines the sequence CR LF as the end-of-line marker for all protocol elements except the entity-body (see <a href="#tolerant.applications" title="Tolerant Applications">Appendix B</a> for tolerant applications). The end-of-line marker within an entity-body is defined by its associated media type, as described 936 936 in <a href="p3-payload.html#media.types" title="Media Types">Section 2.3</a> of <a href="#Part3" id="rfc.xref.Part3.5"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 937 937 </p> 938 <div id="rfc.figure.u.5"></div><pre class="inline"><span id="rfc.iref.g.1 3"></span> CRLF = CR LF938 <div id="rfc.figure.u.5"></div><pre class="inline"><span id="rfc.iref.g.14"></span> CRLF = CR LF 939 939 </pre><p id="rfc.section.2.2.p.5">HTTP/1.1 header field values can be folded onto multiple lines if the continuation line begins with a space or horizontal 940 940 tab. All linear white space, including folding, has the same semantics as SP. A recipient <em class="bcp14">MAY</em> replace any linear white space with a single SP before interpreting the field value or forwarding the message downstream. 941 941 </p> 942 <div id="rfc.figure.u.6"></div><pre class="inline"><span id="rfc.iref.g.1 4"></span> LWS = [CRLF] 1*( SP | HT)942 <div id="rfc.figure.u.6"></div><pre class="inline"><span id="rfc.iref.g.15"></span> LWS = [CRLF] 1*( SP | HTAB ) 943 943 </pre><p id="rfc.section.2.2.p.7">The TEXT rule is only used for descriptive field contents and values that are not intended to be interpreted by the message 944 944 parser. Words of *TEXT <em class="bcp14">MAY</em> contain characters from character sets other than ISO-8859-1 <a href="#ISO-8859-1" id="rfc.xref.ISO-8859-1.1"><cite title="Information technology -- 8-bit single-byte coded graphic character sets -- Part 1: Latin alphabet No. 1">[ISO-8859-1]</cite></a> only when encoded according to the rules of <a href="#RFC2047" id="rfc.xref.RFC2047.1"><cite title="MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text">[RFC2047]</cite></a>. 945 945 </p> 946 <div id="rfc.figure.u.7"></div><pre class="inline"><span id="rfc.iref.g.1 5"></span> TEXT = <any OCTET except CTLs,946 <div id="rfc.figure.u.7"></div><pre class="inline"><span id="rfc.iref.g.16"></span> TEXT = <any OCTET except CTLs, 947 947 but including LWS> 948 948 </pre><p id="rfc.section.2.2.p.9">A CRLF is allowed in the definition of TEXT only as part of a header field continuation. It is expected that the folding LWS … … 950 950 </p> 951 951 <p id="rfc.section.2.2.p.10">Hexadecimal numeric characters are used in several protocol elements.</p> 952 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.1 6"></span> HEX = "A" | "B" | "C" | "D" | "E" | "F"952 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.17"></span> HEX = "A" | "B" | "C" | "D" | "E" | "F" 953 953 | "a" | "b" | "c" | "d" | "e" | "f" | DIGIT 954 954 </pre><p id="rfc.section.2.2.p.12">Many HTTP/1.1 header field values consist of words separated by LWS or special characters. These special characters <em class="bcp14">MUST</em> be in a quoted string to be used within a parameter value (as defined in <a href="#transfer.codings" title="Transfer Codings">Section 3.4</a>). 955 955 </p> 956 <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.1 7"></span><span id="rfc.iref.g.18"></span> token = 1*<any CHAR except CTLs or separators>956 <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.18"></span><span id="rfc.iref.g.19"></span> token = 1*<any CHAR except CTLs or separators> 957 957 separators = "(" | ")" | "<" | ">" | "@" 958 | "," | ";" | ":" | "\" | <">958 | "," | ";" | ":" | "\" | DQUOTE 959 959 | "/" | "[" | "]" | "?" | "=" 960 | "{" | "}" | SP | HT 960 | "{" | "}" | SP | HTAB 961 961 </pre><p id="rfc.section.2.2.p.14">Comments can be included in some HTTP header fields by surrounding the comment text with parentheses. Comments are only allowed 962 962 in fields containing "comment" as part of their field value definition. In all other fields, parentheses are considered part 963 963 of the field value. 964 964 </p> 965 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g. 19"></span><span id="rfc.iref.g.20"></span> comment = "(" *( ctext | quoted-pair | comment ) ")"965 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span> comment = "(" *( ctext | quoted-pair | comment ) ")" 966 966 ctext = <any TEXT excluding "(" and ")"> 967 967 </pre><p id="rfc.section.2.2.p.16">A string of text is parsed as a single word if it is quoted using double-quote marks.</p> 968 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.2 1"></span><span id="rfc.iref.g.22"></span> quoted-string = ( <"> *(qdtext | quoted-pair ) <">)969 qdtext = <any TEXT excluding <">and "\">968 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.22"></span><span id="rfc.iref.g.23"></span> quoted-string = ( DQUOTE *(qdtext | quoted-pair ) DQUOTE ) 969 qdtext = <any TEXT excluding DQUOTE and "\"> 970 970 </pre><p id="rfc.section.2.2.p.18">The backslash character ("\") <em class="bcp14">MAY</em> be used as a single-character quoting mechanism only within quoted-string and comment constructs. 971 971 </p> 972 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.2 3"></span> quoted-pair = "\" CHAR972 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.24"></span> quoted-pair = "\" CHAR 973 973 </pre><h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> 974 974 <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a> <a id="http.version" href="#http.version">HTTP Version</a></h2> … … 982 982 </p> 983 983 <p id="rfc.section.3.1.p.2">The version of an HTTP message is indicated by an HTTP-Version field in the first line of the message. HTTP-Version is case-sensitive.</p> 984 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.2 4"></span> HTTP-Version = "HTTP" "/" 1*DIGIT "." 1*DIGIT984 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.25"></span> HTTP-Version = "HTTP" "/" 1*DIGIT "." 1*DIGIT 985 985 </pre><p id="rfc.section.3.1.p.4">Note that the major and minor numbers <em class="bcp14">MUST</em> be treated as separate integers and that each <em class="bcp14">MAY</em> be incremented higher than a single digit. Thus, HTTP/2.4 is a lower version than HTTP/2.13, which in turn is lower than HTTP/12.3. 986 986 Leading zeros <em class="bcp14">MUST</em> be ignored by recipients and <em class="bcp14">MUST NOT</em> be sent. … … 1024 1024 and semantics for http URLs. 1025 1025 </p> 1026 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.2 5"></span> http_URL = "http:" "//" host [ ":" port ] [ abs_path [ "?" query ]]1026 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.26"></span> http_URL = "http:" "//" host [ ":" port ] [ abs_path [ "?" query ]] 1027 1027 </pre><p id="rfc.section.3.2.2.p.3">If the port is empty or not given, port 80 is assumed. The semantics are that the identified resource is located at the server 1028 1028 listening for TCP connections on that port of that host, and the Request-URI for the resource is abs_path (<a href="#request-uri" title="Request-URI">Section 5.1.2</a>). The use of IP addresses in URLs <em class="bcp14">SHOULD</em> be avoided whenever possible (see <a href="#RFC1900" id="rfc.xref.RFC1900.1"><cite title="Renumbering Needs Work">[RFC1900]</cite></a>). If the abs_path is not present in the URL, it <em class="bcp14">MUST</em> be given as "/" when used as a Request-URI for a resource (<a href="#request-uri" title="Request-URI">Section 5.1.2</a>). If a proxy receives a host name which is not a fully qualified domain name, it <em class="bcp14">MAY</em> add its domain to the host name it received. If a proxy receives a fully qualified domain name, the proxy <em class="bcp14">MUST NOT</em> change the host name. … … 1063 1063 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 LWS beyond that specifically included as SP in the grammar. 1064 1064 </p> 1065 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.2 6"></span><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span><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> HTTP-date = rfc1123-date | rfc850-date | asctime-date1065 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span><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> HTTP-date = rfc1123-date | rfc850-date | asctime-date 1066 1066 rfc1123-date = wkday "," SP date1 SP time SP "GMT" 1067 1067 rfc850-date = weekday "," SP date2 SP time SP "GMT" … … 1090 1090 is a property of the message, not of the original entity. 1091 1091 </p> 1092 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.3 7"></span><span id="rfc.iref.g.38"></span> transfer-coding = "chunked" | transfer-extension1092 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span> transfer-coding = "chunked" | transfer-extension 1093 1093 transfer-extension = token *( ";" parameter ) 1094 1094 </pre><p id="rfc.section.3.4.p.3">Parameters are in the form of attribute/value pairs.</p> 1095 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g. 39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span> parameter = attribute "=" value1095 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span> parameter = attribute "=" value 1096 1096 attribute = token 1097 1097 value = token | quoted-string … … 1118 1118 necessary for the recipient to verify that it has received the full message. 1119 1119 </p> 1120 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.4 2"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> Chunked-Body = *chunk1120 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span> Chunked-Body = *chunk 1121 1121 last-chunk 1122 1122 trailer … … 1175 1175 <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> 1176 1176 <p id="rfc.section.4.1.p.1">HTTP messages consist of requests from client to server and responses from server to client.</p> 1177 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.5 1"></span> HTTP-message = Request | Response ; HTTP/1.1 messages1177 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.52"></span> HTTP-message = Request | Response ; HTTP/1.1 messages 1178 1178 </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="#RFC2822" id="rfc.xref.RFC2822.2"><cite title="Internet Message Format">[RFC2822]</cite></a> for transferring entities (the payload of the message). Both types of message consist of a start-line, zero or more header 1179 1179 fields (also known as "headers"), an empty line (i.e., a line with nothing preceding the CRLF) indicating the end of the header 1180 1180 fields, and possibly a message-body. 1181 1181 </p> 1182 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.5 2"></span><span id="rfc.iref.g.53"></span> generic-message = start-line1182 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span> generic-message = start-line 1183 1183 *(message-header CRLF) 1184 1184 CRLF … … 1194 1194 <p id="rfc.section.4.2.p.1">HTTP header fields, which include general-header (<a href="#general.header.fields" title="General Header Fields">Section 4.5</a>), request-header (<a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>), response-header (<a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 6</a> of <a href="#Part2" id="rfc.xref.Part2.3"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>), and entity-header (<a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 3.1</a> of <a href="#Part3" id="rfc.xref.Part3.8"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) fields, follow the same generic format as that given in <a href="http://tools.ietf.org/html/rfc2822#section-2.1">Section 2.1</a> of <a href="#RFC2822" id="rfc.xref.RFC2822.3"><cite title="Internet Message Format">[RFC2822]</cite></a>. Each header field consists of a name followed by a colon (":") and the field value. Field names are case-insensitive. The 1195 1195 field value <em class="bcp14">MAY</em> be preceded by any amount of LWS, though a single SP is preferred. Header fields can be extended over multiple lines by preceding 1196 each extra line with at least one SP or HT. Applications ought to follow "common form", where one is known or indicated, when 1197 generating HTTP constructs, since there might exist some implementations that fail to accept anything beyond the common forms. 1198 </p> 1199 <div id="rfc.figure.u.24"></div><pre class="inline"><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> message-header = field-name ":" [ field-value ] 1196 each extra line with at least one SP or HTAB. Applications ought to follow "common form", where one is known or indicated, 1197 when generating HTTP constructs, since there might exist some implementations that fail to accept anything beyond the common 1198 forms. 1199 </p> 1200 <div id="rfc.figure.u.24"></div><pre class="inline"><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> message-header = field-name ":" [ field-value ] 1200 1201 field-name = token 1201 1202 field-value = *( field-content | LWS ) … … 1221 1222 header field (<a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.2" title="Transfer-Encoding">Section 8.7</a>). 1222 1223 </p> 1223 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.5 8"></span> message-body = entity-body1224 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.59"></span> message-body = entity-body 1224 1225 | <entity-body encoded as per Transfer-Encoding> 1225 1226 </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 … … 1287 1288 to the entity being transferred. These header fields apply only to the message being transmitted. 1288 1289 </p> 1289 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g. 59"></span> general-header = Cache-Control ; <a href="#Part6" id="rfc.xref.Part6.3"><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>1290 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.60"></span> general-header = Cache-Control ; <a href="#Part6" id="rfc.xref.Part6.3"><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> 1290 1291 | Connection ; <a href="#header.connection" id="rfc.xref.header.connection.1" title="Connection">Section 8.1</a> 1291 1292 | Date ; <a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 8.3</a> … … 1304 1305 resource, the identifier of the resource, and the protocol version in use. 1305 1306 </p> 1306 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.6 0"></span> Request = Request-Line ; <a href="#request-line" title="Request-Line">Section 5.1</a>1307 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.61"></span> Request = Request-Line ; <a href="#request-line" title="Request-Line">Section 5.1</a> 1307 1308 *(( general-header ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1308 1309 | request-header ; <a href="#Part2" id="rfc.xref.Part2.5"><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 4</a> … … 1314 1315 elements are separated by SP characters. No CR or LF is allowed except in the final CRLF sequence. 1315 1316 </p> 1316 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.6 1"></span> Request-Line = Method SP Request-URI SP HTTP-Version CRLF1317 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.62"></span> Request-Line = Method SP Request-URI SP HTTP-Version CRLF 1317 1318 </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> 1318 1319 <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-URI. The method is case-sensitive.</p> 1319 <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.6 2"></span><span id="rfc.iref.g.63"></span> Method = token1320 <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span> Method = token 1320 1321 </pre><h3 id="rfc.section.5.1.2"><a href="#rfc.section.5.1.2">5.1.2</a> <a id="request-uri" href="#request-uri">Request-URI</a></h3> 1321 1322 <p id="rfc.section.5.1.2.p.1">The Request-URI is a Uniform Resource Identifier (<a href="#uri" title="Uniform Resource Identifiers">Section 3.2</a>) and identifies the resource upon which to apply the request. 1322 1323 </p> 1323 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.6 4"></span> Request-URI = "*"1324 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.65"></span> Request-URI = "*" 1324 1325 | absoluteURI 1325 1326 | ( abs_path [ "?" query ] ) … … 1382 1383 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="response" href="#response">Response</a></h1> 1383 1384 <p id="rfc.section.6.p.1">After receiving and interpreting a request message, a server responds with an HTTP response message.</p> 1384 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.6 5"></span> Response = Status-Line ; <a href="#status-line" title="Status-Line">Section 6.1</a>1385 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.66"></span> Response = Status-Line ; <a href="#status-line" title="Status-Line">Section 6.1</a> 1385 1386 *(( general-header ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1386 1387 | response-header ; <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 6</a> … … 1393 1394 CRLF sequence. 1394 1395 </p> 1395 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.6 6"></span> Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF1396 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.67"></span> Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF 1396 1397 </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> 1397 1398 <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 … … 1409 1410 <li>5xx: Server Error - The server failed to fulfill an apparently valid request</li> 1410 1411 </ul> 1411 <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.6 7"></span><span id="rfc.iref.g.68"></span><span id="rfc.iref.g.69"></span> Status-Code = 3DIGIT1412 <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.68"></span><span id="rfc.iref.g.69"></span><span id="rfc.iref.g.70"></span> Status-Code = 3DIGIT 1412 1413 Reason-Phrase = *<TEXT, excluding CR, LF> 1413 1414 </pre><h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="connections" href="#connections">Connections</a></h1> … … 1600 1601 </p> 1601 1602 <p id="rfc.section.8.1.p.2">The Connection header has the following grammar:</p> 1602 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.7 0"></span><span id="rfc.iref.g.71"></span> Connection = "Connection" ":" 1#(connection-token)1603 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.71"></span><span id="rfc.iref.g.72"></span> Connection = "Connection" ":" 1#(connection-token) 1603 1604 connection-token = token 1604 1605 </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 … … 1628 1629 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. 1629 1630 </p> 1630 <div id="rfc.figure.u.39"></div><pre class="inline"><span id="rfc.iref.g.7 2"></span> Content-Length = "Content-Length" ":" 1*DIGIT1631 <div id="rfc.figure.u.39"></div><pre class="inline"><span id="rfc.iref.g.73"></span> Content-Length = "Content-Length" ":" 1*DIGIT 1631 1632 </pre><p id="rfc.section.8.2.p.3">An example is</p> 1632 1633 <div id="rfc.figure.u.40"></div><pre class="text"> Content-Length: 3495 … … 1645 1646 as orig-date in <a href="http://tools.ietf.org/html/rfc2822#section-3.6.1">Section 3.6.1</a> of <a href="#RFC2822" id="rfc.xref.RFC2822.4"><cite title="Internet Message Format">[RFC2822]</cite></a>. The field value is an HTTP-date, as described in <a href="#full.date" title="Full Date">Section 3.3.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 1646 1647 </p> 1647 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.7 3"></span> Date = "Date" ":" HTTP-date1648 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.74"></span> Date = "Date" ":" HTTP-date 1648 1649 </pre><p id="rfc.section.8.3.p.3">An example is</p> 1649 1650 <div id="rfc.figure.u.42"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT … … 1683 1684 a single IP address. 1684 1685 </p> 1685 <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.7 4"></span> Host = "Host" ":" host [ ":" port ] ; <a href="#http.url" title="http URL">Section 3.2.2</a>1686 <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.75"></span> Host = "Host" ":" host [ ":" port ] ; <a href="#http.url" title="http URL">Section 3.2.2</a> 1686 1687 </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 1687 1688 URL). For example, a request on the origin server for <http://www.example.org/pub/WWW/> would properly include: … … 1702 1703 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.4</a>). 1703 1704 </p> 1704 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.7 5"></span><span id="rfc.iref.g.76"></span> TE = "TE" ":" #( t-codings )1705 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.76"></span><span id="rfc.iref.g.77"></span> TE = "TE" ":" #( t-codings ) 1705 1706 t-codings = "trailers" | ( transfer-extension [ accept-params ] ) 1706 1707 </pre><p id="rfc.section.8.5.p.3">The presence of the keyword "trailers" indicates that the client is willing to accept trailer fields in a chunked transfer-coding, … … 1745 1746 with chunked transfer-coding. 1746 1747 </p> 1747 <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.7 7"></span> Trailer = "Trailer" ":" 1#field-name1748 <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.78"></span> Trailer = "Trailer" ":" 1#field-name 1748 1749 </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 1749 1750 to know which header fields to expect in the trailer. … … 1765 1766 transfer-coding is a property of the message, not of the entity. 1766 1767 </p> 1767 <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.7 8"></span> Transfer-Encoding = "Transfer-Encoding" ":" 1#transfer-coding1768 <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.79"></span> Transfer-Encoding = "Transfer-Encoding" ":" 1#transfer-coding 1768 1769 </pre><p id="rfc.section.8.7.p.3">Transfer-codings are defined in <a href="#transfer.codings" title="Transfer Codings">Section 3.4</a>. An example is: 1769 1770 </p> … … 1778 1779 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. 1779 1780 </p> 1780 <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g. 79"></span> Upgrade = "Upgrade" ":" 1#product1781 <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g.80"></span> Upgrade = "Upgrade" ":" 1#product 1781 1782 </pre><p id="rfc.section.8.8.p.3">For example,</p> 1782 1783 <div id="rfc.figure.u.51"></div><pre class="text"> Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11 … … 1809 1810 of all senders along the request/response chain. 1810 1811 </p> 1811 <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.8 0"></span><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span> Via = "Via" ":" 1#( received-protocol received-by [ comment ] )1812 <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span><span id="rfc.iref.g.86"></span> Via = "Via" ":" 1#( received-protocol received-by [ comment ] ) 1812 1813 received-protocol = [ protocol-name "/" ] protocol-version 1813 1814 protocol-name = token … … 2265 2266 can be interpreted unambiguously. 2266 2267 </p> 2267 <p id="rfc.section.B.p.2">Clients <em class="bcp14">SHOULD</em> be tolerant in parsing the Status-Line and servers tolerant when parsing the Request-Line. In particular, they <em class="bcp14">SHOULD</em> accept any amount of SP or HT characters between fields, even though only a single SP is required.2268 <p id="rfc.section.B.p.2">Clients <em class="bcp14">SHOULD</em> be tolerant in parsing the Status-Line and servers tolerant when parsing the Request-Line. In particular, they <em class="bcp14">SHOULD</em> accept any amount of SP or HTAB characters between fields, even though only a single SP is required. 2268 2269 </p> 2269 2270 <p id="rfc.section.B.p.3">The line terminator for message-header fields is the sequence CRLF. However, we recommend that applications, when parsing … … 2428 2429 <ul> 2429 2430 <li>Update media type registrations to use RFC4288 template.</li> 2431 <li>Use names of RFC4234 core rules DQUOTE and HTAB (work in progress on <<a href="http://www3.tools.ietf.org/wg/httpbis/trac/ticket/36">http://www3.tools.ietf.org/wg/httpbis/trac/ticket/36</a>>) 2432 </li> 2430 2433 </ul> 2431 2434 <h1><a id="rfc.copyright" href="#rfc.copyright">Full Copyright Statement</a></h1> … … 2489 2492 <ul class="ind"> 2490 2493 <li class="indline1"><tt>ALPHA</tt> <a class="iref" href="#rfc.iref.g.6"><b>2.2</b></a></li> 2491 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g. 29"><b>3.3.1</b></a></li>2492 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g.4 0"><b>3.4</b></a></li>2494 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g.30"><b>3.3.1</b></a></li> 2495 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g.41"><b>3.4</b></a></li> 2493 2496 <li class="indline1"><tt>CHAR</tt> <a class="iref" href="#rfc.iref.g.3"><b>2.2</b></a></li> 2494 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.4 3"><b>3.4.1</b></a></li>2495 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g. 49"><b>3.4.1</b></a></li>2496 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g.4 7"><b>3.4.1</b></a></li>2497 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g.4 8"><b>3.4.1</b></a></li>2498 <li class="indline1"><tt>chunk-extension</tt> <a class="iref" href="#rfc.iref.g.4 6"><b>3.4.1</b></a></li>2499 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.4 4"><b>3.4.1</b></a></li>2500 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.4 2"><b>3.4.1</b></a></li>2501 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g. 19"><b>2.2</b></a></li>2502 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g.7 0"><b>8.1</b></a></li>2503 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g.7 1"><b>8.1</b></a></li>2504 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g.7 2"><b>8.2</b></a></li>2497 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.44"><b>3.4.1</b></a></li> 2498 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g.50"><b>3.4.1</b></a></li> 2499 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g.48"><b>3.4.1</b></a></li> 2500 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g.49"><b>3.4.1</b></a></li> 2501 <li class="indline1"><tt>chunk-extension</tt> <a class="iref" href="#rfc.iref.g.47"><b>3.4.1</b></a></li> 2502 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.45"><b>3.4.1</b></a></li> 2503 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.43"><b>3.4.1</b></a></li> 2504 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g.20"><b>2.2</b></a></li> 2505 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g.71"><b>8.1</b></a></li> 2506 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g.72"><b>8.1</b></a></li> 2507 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g.73"><b>8.2</b></a></li> 2505 2508 <li class="indline1"><tt>CR</tt> <a class="iref" href="#rfc.iref.g.9"><b>2.2</b></a></li> 2506 <li class="indline1"><tt>CRLF</tt> <a class="iref" href="#rfc.iref.g.1 3"><b>2.2</b></a></li>2507 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g.2 0"><b>2.2</b></a></li>2509 <li class="indline1"><tt>CRLF</tt> <a class="iref" href="#rfc.iref.g.14"><b>2.2</b></a></li> 2510 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g.21"><b>2.2</b></a></li> 2508 2511 <li class="indline1"><tt>CTL</tt> <a class="iref" href="#rfc.iref.g.8"><b>2.2</b></a></li> 2509 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.7 3"><b>8.3</b></a></li>2510 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g.3 0"><b>3.3.1</b></a></li>2511 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.3 1"><b>3.3.1</b></a></li>2512 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.3 2"><b>3.3.1</b></a></li>2512 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.74"><b>8.3</b></a></li> 2513 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g.31"><b>3.3.1</b></a></li> 2514 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.32"><b>3.3.1</b></a></li> 2515 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.33"><b>3.3.1</b></a></li> 2513 2516 <li class="indline1"><tt>DIGIT</tt> <a class="iref" href="#rfc.iref.g.7"><b>2.2</b></a></li> 2514 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g.68"><b>6.1.1</b></a></li> 2515 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.63"><b>5.1.1</b></a></li> 2516 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.57"><b>4.2</b></a></li> 2517 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.55"><b>4.2</b></a></li> 2518 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.56"><b>4.2</b></a></li> 2519 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.59"><b>4.5</b></a></li> 2520 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g.52"><b>4.1</b></a></li> 2521 <li class="indline1"><tt>HEX</tt> <a class="iref" href="#rfc.iref.g.16"><b>2.2</b></a></li> 2522 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.74"><b>8.4</b></a></li> 2523 <li class="indline1"><tt>HT</tt> <a class="iref" href="#rfc.iref.g.12"><b>2.2</b></a></li> 2524 <li class="indline1"><tt>HTTP-date</tt> <a class="iref" href="#rfc.iref.g.26"><b>3.3.1</b></a></li> 2525 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.51"><b>4.1</b></a></li> 2526 <li class="indline1"><tt>HTTP-Version</tt> <a class="iref" href="#rfc.iref.g.24"><b>3.1</b></a></li> 2527 <li class="indline1"><tt>http_URL</tt> <a class="iref" href="#rfc.iref.g.25"><b>3.2.2</b></a></li> 2528 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.45"><b>3.4.1</b></a></li> 2517 <li class="indline1"><tt>DQUOTE</tt> <a class="iref" href="#rfc.iref.g.13"><b>2.2</b></a></li> 2518 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g.69"><b>6.1.1</b></a></li> 2519 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.64"><b>5.1.1</b></a></li> 2520 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.58"><b>4.2</b></a></li> 2521 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.56"><b>4.2</b></a></li> 2522 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.57"><b>4.2</b></a></li> 2523 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.60"><b>4.5</b></a></li> 2524 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g.53"><b>4.1</b></a></li> 2525 <li class="indline1"><tt>HEX</tt> <a class="iref" href="#rfc.iref.g.17"><b>2.2</b></a></li> 2526 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.75"><b>8.4</b></a></li> 2527 <li class="indline1"><tt>HTAB</tt> <a class="iref" href="#rfc.iref.g.12"><b>2.2</b></a></li> 2528 <li class="indline1"><tt>HTTP-date</tt> <a class="iref" href="#rfc.iref.g.27"><b>3.3.1</b></a></li> 2529 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.52"><b>4.1</b></a></li> 2530 <li class="indline1"><tt>HTTP-Version</tt> <a class="iref" href="#rfc.iref.g.25"><b>3.1</b></a></li> 2531 <li class="indline1"><tt>http_URL</tt> <a class="iref" href="#rfc.iref.g.26"><b>3.2.2</b></a></li> 2532 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.46"><b>3.4.1</b></a></li> 2529 2533 <li class="indline1"><tt>LF</tt> <a class="iref" href="#rfc.iref.g.10"><b>2.2</b></a></li> 2530 2534 <li class="indline1"><tt>LOALPHA</tt> <a class="iref" href="#rfc.iref.g.5"><b>2.2</b></a></li> 2531 <li class="indline1"><tt>LWS</tt> <a class="iref" href="#rfc.iref.g.1 4"><b>2.2</b></a></li>2532 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g.5 8"><b>4.3</b></a></li>2533 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.5 4"><b>4.2</b></a></li>2534 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.6 2"><b>5.1.1</b></a></li>2535 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.3 6"><b>3.3.1</b></a></li>2535 <li class="indline1"><tt>LWS</tt> <a class="iref" href="#rfc.iref.g.15"><b>2.2</b></a></li> 2536 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g.59"><b>4.3</b></a></li> 2537 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.55"><b>4.2</b></a></li> 2538 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.63"><b>5.1.1</b></a></li> 2539 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.37"><b>3.3.1</b></a></li> 2536 2540 <li class="indline1"><tt>OCTET</tt> <a class="iref" href="#rfc.iref.g.2"><b>2.2</b></a></li> 2537 <li class="indline1"><tt>parameter</tt> <a class="iref" href="#rfc.iref.g. 39"><b>3.4</b></a></li>2538 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.8 2"><b>8.9</b></a></li>2539 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.8 3"><b>8.9</b></a></li>2540 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.8 5"><b>8.9</b></a></li>2541 <li class="indline1"><tt>qdtext</tt> <a class="iref" href="#rfc.iref.g.2 2"><b>2.2</b></a></li>2542 <li class="indline1"><tt>quoted-pair</tt> <a class="iref" href="#rfc.iref.g.2 3"><b>2.2</b></a></li>2543 <li class="indline1"><tt>quoted-string</tt> <a class="iref" href="#rfc.iref.g.2 1"><b>2.2</b></a></li>2544 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g. 69"><b>6.1.1</b></a></li>2545 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.8 4"><b>8.9</b></a></li>2546 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.8 1"><b>8.9</b></a></li>2547 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g.6 0"><b>5</b></a></li>2548 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g.6 1"><b>5.1</b></a></li>2549 <li class="indline1"><tt>Request-URI</tt> <a class="iref" href="#rfc.iref.g.6 4"><b>5.1.2</b></a></li>2550 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g.6 5"><b>6</b></a></li>2551 <li class="indline1"><tt>rfc1123-date</tt> <a class="iref" href="#rfc.iref.g.2 7"><b>3.3.1</b></a></li>2552 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g.2 8"><b>3.3.1</b></a></li>2553 <li class="indline1"><tt>separators</tt> <a class="iref" href="#rfc.iref.g.1 8"><b>2.2</b></a></li>2541 <li class="indline1"><tt>parameter</tt> <a class="iref" href="#rfc.iref.g.40"><b>3.4</b></a></li> 2542 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.83"><b>8.9</b></a></li> 2543 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.84"><b>8.9</b></a></li> 2544 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.86"><b>8.9</b></a></li> 2545 <li class="indline1"><tt>qdtext</tt> <a class="iref" href="#rfc.iref.g.23"><b>2.2</b></a></li> 2546 <li class="indline1"><tt>quoted-pair</tt> <a class="iref" href="#rfc.iref.g.24"><b>2.2</b></a></li> 2547 <li class="indline1"><tt>quoted-string</tt> <a class="iref" href="#rfc.iref.g.22"><b>2.2</b></a></li> 2548 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g.70"><b>6.1.1</b></a></li> 2549 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.85"><b>8.9</b></a></li> 2550 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.82"><b>8.9</b></a></li> 2551 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g.61"><b>5</b></a></li> 2552 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g.62"><b>5.1</b></a></li> 2553 <li class="indline1"><tt>Request-URI</tt> <a class="iref" href="#rfc.iref.g.65"><b>5.1.2</b></a></li> 2554 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g.66"><b>6</b></a></li> 2555 <li class="indline1"><tt>rfc1123-date</tt> <a class="iref" href="#rfc.iref.g.28"><b>3.3.1</b></a></li> 2556 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g.29"><b>3.3.1</b></a></li> 2557 <li class="indline1"><tt>separators</tt> <a class="iref" href="#rfc.iref.g.19"><b>2.2</b></a></li> 2554 2558 <li class="indline1"><tt>SP</tt> <a class="iref" href="#rfc.iref.g.11"><b>2.2</b></a></li> 2555 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g.5 3"><b>4.1</b></a></li>2556 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.6 7"><b>6.1.1</b></a></li>2557 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g.6 6"><b>6.1</b></a></li>2558 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g.7 6"><b>8.5</b></a></li>2559 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.7 5"><b>8.5</b></a></li>2560 <li class="indline1"><tt>TEXT</tt> <a class="iref" href="#rfc.iref.g.1 5"><b>2.2</b></a></li>2561 <li class="indline1"><tt>time</tt> <a class="iref" href="#rfc.iref.g.3 3"><b>3.3.1</b></a></li>2562 <li class="indline1"><tt>token</tt> <a class="iref" href="#rfc.iref.g.1 7"><b>2.2</b></a></li>2563 <li class="indline1"><tt>trailer</tt> <a class="iref" href="#rfc.iref.g.5 0"><b>3.4.1</b></a></li>2564 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g.7 7"><b>8.6</b></a></li>2565 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g.3 7"><b>3.4</b></a></li>2566 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g.7 8"><b>8.7</b></a></li>2567 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g.3 8"><b>3.4</b></a></li>2559 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g.54"><b>4.1</b></a></li> 2560 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.68"><b>6.1.1</b></a></li> 2561 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g.67"><b>6.1</b></a></li> 2562 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g.77"><b>8.5</b></a></li> 2563 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.76"><b>8.5</b></a></li> 2564 <li class="indline1"><tt>TEXT</tt> <a class="iref" href="#rfc.iref.g.16"><b>2.2</b></a></li> 2565 <li class="indline1"><tt>time</tt> <a class="iref" href="#rfc.iref.g.34"><b>3.3.1</b></a></li> 2566 <li class="indline1"><tt>token</tt> <a class="iref" href="#rfc.iref.g.18"><b>2.2</b></a></li> 2567 <li class="indline1"><tt>trailer</tt> <a class="iref" href="#rfc.iref.g.51"><b>3.4.1</b></a></li> 2568 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g.78"><b>8.6</b></a></li> 2569 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g.38"><b>3.4</b></a></li> 2570 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g.79"><b>8.7</b></a></li> 2571 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g.39"><b>3.4</b></a></li> 2568 2572 <li class="indline1"><tt>UPALPHA</tt> <a class="iref" href="#rfc.iref.g.4"><b>2.2</b></a></li> 2569 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g. 79"><b>8.8</b></a></li>2570 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g.4 1"><b>3.4</b></a></li>2571 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.8 0"><b>8.9</b></a></li>2572 <li class="indline1"><tt>weekday</tt> <a class="iref" href="#rfc.iref.g.3 5"><b>3.3.1</b></a></li>2573 <li class="indline1"><tt>wkday</tt> <a class="iref" href="#rfc.iref.g.3 4"><b>3.3.1</b></a></li>2573 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g.80"><b>8.8</b></a></li> 2574 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g.42"><b>3.4</b></a></li> 2575 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.81"><b>8.9</b></a></li> 2576 <li class="indline1"><tt>weekday</tt> <a class="iref" href="#rfc.iref.g.36"><b>3.3.1</b></a></li> 2577 <li class="indline1"><tt>wkday</tt> <a class="iref" href="#rfc.iref.g.35"><b>3.3.1</b></a></li> 2574 2578 </ul> 2575 2579 </li> -
draft-ietf-httpbis/latest/p1-messaging.xml
r153 r154 670 670 indentation of continuation lines is used to indicate a rule 671 671 definition that spans more than one line. Certain basic rules are 672 in uppercase, such as SP, LWS, HT , CRLF, DIGIT, ALPHA, etc. Angle672 in uppercase, such as SP, LWS, HTAB, CRLF, DIGIT, ALPHA, etc. Angle 673 673 brackets are used within definitions whenever their presence will 674 674 facilitate discerning the use of rule names. … … 806 806 <x:anchor-alias value="LF"/> 807 807 <x:anchor-alias value="SP"/> 808 <x:anchor-alias value="HT "/>808 <x:anchor-alias value="HTAB"/> 809 809 <x:anchor-alias value="CRLF"/> 810 810 <x:anchor-alias value="LWS"/> … … 823 823 is defined by ANSI X3.4-1986 <xref target="USASCII"/>. 824 824 </t> 825 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="OCTET"/><iref primary="true" item="Grammar" subitem="CHAR"/><iref primary="true" item="Grammar" subitem="UPALPHA"/><iref primary="true" item="Grammar" subitem="LOALPHA"/><iref primary="true" item="Grammar" subitem="ALPHA"/><iref primary="true" item="Grammar" subitem="DIGIT"/><iref primary="true" item="Grammar" subitem="CTL"/><iref primary="true" item="Grammar" subitem="CR"/><iref primary="true" item="Grammar" subitem="LF"/><iref primary="true" item="Grammar" subitem="SP"/><iref primary="true" item="Grammar" subitem="HT "/>825 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="OCTET"/><iref primary="true" item="Grammar" subitem="CHAR"/><iref primary="true" item="Grammar" subitem="UPALPHA"/><iref primary="true" item="Grammar" subitem="LOALPHA"/><iref primary="true" item="Grammar" subitem="ALPHA"/><iref primary="true" item="Grammar" subitem="DIGIT"/><iref primary="true" item="Grammar" subitem="CTL"/><iref primary="true" item="Grammar" subitem="CR"/><iref primary="true" item="Grammar" subitem="LF"/><iref primary="true" item="Grammar" subitem="SP"/><iref primary="true" item="Grammar" subitem="HTAB"/><iref primary="true" item="Grammar" subitem="DQUOTE"/> 826 826 OCTET = <any 8-bit sequence of data> 827 827 CHAR = <any US-ASCII character (octets 0 - 127)> … … 835 835 LF = <US-ASCII LF, linefeed (10)> 836 836 SP = <US-ASCII SP, space (32)> 837 HT 838 <">= <US-ASCII double-quote mark (34)>837 HTAB = <US-ASCII HT, horizontal-tab (9)> 838 DQUOTE = <US-ASCII double-quote mark (34)> 839 839 </artwork></figure> 840 840 <t> … … 855 855 </t> 856 856 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="LWS"/> 857 LWS = [CRLF] 1*( SP | HT )857 LWS = [CRLF] 1*( SP | HTAB ) 858 858 </artwork></figure> 859 859 <t> … … 889 889 token = 1*<any CHAR except CTLs or separators> 890 890 separators = "(" | ")" | "<" | ">" | "@" 891 | "," | ";" | ":" | "\" | <">891 | "," | ";" | ":" | "\" | DQUOTE 892 892 | "/" | "[" | "]" | "?" | "=" 893 | "{" | "}" | SP | HT 893 | "{" | "}" | SP | HTAB 894 894 </artwork></figure> 895 895 <t> … … 909 909 </t> 910 910 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="quoted-string"/><iref primary="true" item="Grammar" subitem="qdtext"/> 911 quoted-string = ( <"> *(qdtext | quoted-pair ) <">)912 qdtext = <any TEXT excluding <">and "\">911 quoted-string = ( DQUOTE *(qdtext | quoted-pair ) DQUOTE ) 912 qdtext = <any TEXT excluding DQUOTE and "\"> 913 913 </artwork></figure> 914 914 <t> … … 1357 1357 of LWS, though a single SP is preferred. Header fields can be 1358 1358 extended over multiple lines by preceding each extra line with at 1359 least one SP or HT . Applications ought to follow "common form", where1359 least one SP or HTAB. Applications ought to follow "common form", where 1360 1360 one is known or indicated, when generating HTTP constructs, since 1361 1361 there might exist some implementations that fail to accept anything … … 3806 3806 Clients &SHOULD; be tolerant in parsing the Status-Line and servers 3807 3807 tolerant when parsing the Request-Line. In particular, they &SHOULD; 3808 accept any amount of SP or HT characters between fields, even though3808 accept any amount of SP or HTAB characters between fields, even though 3809 3809 only a single SP is required. 3810 3810 </t> … … 4133 4133 Update media type registrations to use RFC4288 template. 4134 4134 </t> 4135 <t> 4136 Use names of RFC4234 core rules DQUOTE and HTAB (work in progress on <eref target="http://www3.tools.ietf.org/wg/httpbis/trac/ticket/36"/>) 4137 </t> 4135 4138 </list> 4136 4139 </t> -
draft-ietf-httpbis/latest/p6-cache.html
r153 r154 1267 1267 cache-response-directive = 1268 1268 "public" ; <a href="#what.is.cacheable" title="What is Cacheable">Section 3.2.1</a> 1269 | "private" [ "=" <"> 1#field-name <">] ; <a href="#what.is.cacheable" title="What is Cacheable">Section 3.2.1</a>1270 | "no-cache" [ "=" <"> 1#field-name <">]; <a href="#what.is.cacheable" title="What is Cacheable">Section 3.2.1</a>1269 | "private" [ "=" DQUOTE 1#field-name DQUOTE ] ; <a href="#what.is.cacheable" title="What is Cacheable">Section 3.2.1</a> 1270 | "no-cache" [ "=" DQUOTE 1#field-name DQUOTE ]; <a href="#what.is.cacheable" title="What is Cacheable">Section 3.2.1</a> 1271 1271 | "no-store" ; <a href="#what.may.be.stored.by.caches" title="What May be Stored by Caches">Section 3.2.2</a> 1272 1272 | "no-transform" ; <a href="#no-transform.directive" title="No-Transform Directive">Section 3.2.5</a> … … 1643 1643 ; the Warning header, for use in debugging 1644 1644 warn-text = quoted-string 1645 warn-date = <"> HTTP-date <">1645 warn-date = DQUOTE HTTP-date DQUOTE 1646 1646 </pre><p id="rfc.section.3.6.p.4">A response <em class="bcp14">MAY</em> carry more than one Warning header. 1647 1647 </p> … … 1859 1859 </li> 1860 1860 <li> <<a href="http://www3.tools.ietf.org/wg/httpbis/trac/ticket/87">http://www3.tools.ietf.org/wg/httpbis/trac/ticket/87</a>>: "typo in 13.2.2" 1861 </li> 1862 </ul> 1863 <p id="rfc.section.B.2.p.2">Other changes: </p> 1864 <ul> 1865 <li>Use names of RFC4234 core rules DQUOTE and HTAB (work in progress on <<a href="http://www3.tools.ietf.org/wg/httpbis/trac/ticket/36">http://www3.tools.ietf.org/wg/httpbis/trac/ticket/36</a>>) 1861 1866 </li> 1862 1867 </ul> -
draft-ietf-httpbis/latest/p6-cache.xml
r153 r154 1615 1615 cache-response-directive = 1616 1616 "public" ; <xref target="what.is.cacheable"/> 1617 | "private" [ "=" <"> 1#field-name <">] ; <xref target="what.is.cacheable"/>1618 | "no-cache" [ "=" <"> 1#field-name <">]; <xref target="what.is.cacheable"/>1617 | "private" [ "=" DQUOTE 1#field-name DQUOTE ] ; <xref target="what.is.cacheable"/> 1618 | "no-cache" [ "=" DQUOTE 1#field-name DQUOTE ]; <xref target="what.is.cacheable"/> 1619 1619 | "no-store" ; <xref target="what.may.be.stored.by.caches"/> 1620 1620 | "no-transform" ; <xref target="no-transform.directive"/> … … 2297 2297 ; the Warning header, for use in debugging 2298 2298 warn-text = quoted-string 2299 warn-date = <"> HTTP-date <">2299 warn-date = DQUOTE HTTP-date DQUOTE 2300 2300 </artwork></figure> 2301 2301 <t> … … 2921 2921 </list> 2922 2922 </t> 2923 <t> 2924 Other changes: 2925 <list style="symbols"> 2926 <t> 2927 Use names of RFC4234 core rules DQUOTE and HTAB (work in progress on <eref target="http://www3.tools.ietf.org/wg/httpbis/trac/ticket/36"/>) 2928 </t> 2929 </list> 2930 </t> 2923 2931 </section> 2924 2932
Note: See TracChangeset
for help on using the changeset viewer.