Changeset 2181
- Timestamp:
- 11/02/13 14:10:03 (9 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/httpbis.abnf
r2138 r2181 63 63 absolute-URI = <absolute-URI, defined in [RFC3986], Section 4.3> 64 64 absolute-form = absolute-URI 65 absolute-path = 1*( "/" segment ) 65 66 accept-ext = OWS ";" OWS token [ "=" word ] 66 67 accept-params = weight *accept-ext … … 164 165 obs-text = %x80-FF 165 166 opaque-tag = DQUOTE *etagc DQUOTE 166 origin-form = path-absolute[ "?" query ]167 origin-form = absolute-path [ "?" query ] 167 168 other-content-range = other-range-unit SP other-range-resp 168 169 other-range-resp = *CHAR … … 173 174 partial-URI = relative-part [ "?" query ] 174 175 path-abempty = <path-abempty, defined in [RFC3986], Section 3.3> 175 path-absolute = <path-absolute, defined in [RFC3986], Section 3.3>176 176 port = <port, defined in [RFC3986], Section 3.2.3> 177 177 pragma-directive = "no-cache" / extension-pragma … … 204 204 rfc850-date = day-name-l "," SP date2 SP time-of-day SP GMT 205 205 second = 2DIGIT 206 segment = <segment, defined in [RFC3986], Section 3.3> 206 207 special = "(" / ")" / "<" / ">" / "@" / "," / ";" / ":" / "\" / DQUOTE / "/" / "[" / "]" / "?" / "=" / "{" / "}" 207 208 start-line = request-line / status-line -
draft-ietf-httpbis/latest/p1-messaging.html
r2180 r2181 1011 1011 </p> 1012 1012 <p id="rfc.section.2.7.p.2">This specification adopts the definitions of "URI-reference", "absolute-URI", "relative-part", "port", "host", "path-abempty", 1013 "path-absolute", "query", and "authority" from the URI generic syntax. In addition, we define a partial-URI rule for protocol 1014 elements that allow a relative URI but not a fragment. 1015 </p> 1016 <div id="rfc.figure.u.7"></div><pre class="inline"><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span><span id="rfc.iref.g.22"></span><span id="rfc.iref.g.23"></span> <a href="#uri" class="smpl">URI-reference</a> = <URI-reference, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.3"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.1">Section 4.1</a>> 1013 "query", "segment", and "authority" from the URI generic syntax. In addition, we define an "absolute-path" rule (that differs 1014 from RFC 3986's "path-absolute" in that it allows a leading "//") and a "partial-URI" rule for protocol elements that allow 1015 a relative URI but not a fragment. 1016 </p> 1017 <div id="rfc.figure.u.7"></div><pre class="inline"><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span><span id="rfc.iref.g.22"></span><span id="rfc.iref.g.23"></span><span id="rfc.iref.g.24"></span> <a href="#uri" class="smpl">URI-reference</a> = <URI-reference, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.3"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.1">Section 4.1</a>> 1017 1018 <a href="#uri" class="smpl">absolute-URI</a> = <absolute-URI, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.4"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.3">Section 4.3</a>> 1018 1019 <a href="#uri" class="smpl">relative-part</a> = <relative-part, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.5"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.2">Section 4.2</a>> 1019 1020 <a href="#uri" class="smpl">authority</a> = <authority, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.6"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.2">Section 3.2</a>> 1020 1021 <a href="#uri" class="smpl">path-abempty</a> = <path-abempty, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.7"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.3">Section 3.3</a>> 1021 <a href="#uri" class="smpl">p ath-absolute</a> = <path-absolute, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.8"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.3">Section 3.3</a>>1022 <a href="#uri" class="smpl"> port</a> = <port, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.9"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.2.3">Section 3.2.3</a>>1023 <a href="#uri" class="smpl"> query</a> = <query, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.10"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.4">Section 3.4</a>>1022 <a href="#uri" class="smpl">port</a> = <port, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.8"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.2.3">Section 3.2.3</a>> 1023 <a href="#uri" class="smpl">query</a> = <query, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.9"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.4">Section 3.4</a>> 1024 <a href="#uri" class="smpl">segment</a> = <segment, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.10"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.3">Section 3.3</a>> 1024 1025 <a href="#uri" class="smpl">uri-host</a> = <host, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.11"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.2.2">Section 3.2.2</a>> 1025 1026 1027 <a href="#uri" class="smpl">absolute-path</a> = 1*( "/" segment ) 1026 1028 <a href="#uri" class="smpl">partial-URI</a> = relative-part [ "?" query ] 1027 1029 </pre><p id="rfc.section.2.7.p.4">Each protocol element in HTTP that allows a URI reference will indicate in its ABNF production whether the element allows … … 1036 1038 namespace governed by a potential HTTP origin server listening for TCP connections on a given port. 1037 1039 </p> 1038 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.2 4"></span> <a href="#http.uri" class="smpl">http-URI</a> = "http:" "//" <a href="#uri" class="smpl">authority</a> <a href="#uri" class="smpl">path-abempty</a> [ "?" <a href="#uri" class="smpl">query</a> ]1040 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.25"></span> <a href="#http.uri" class="smpl">http-URI</a> = "http:" "//" <a href="#uri" class="smpl">authority</a> <a href="#uri" class="smpl">path-abempty</a> [ "?" <a href="#uri" class="smpl">query</a> ] 1039 1041 </pre><p id="rfc.section.2.7.1.p.3">The HTTP origin server is identified by the generic syntax's <a href="#uri" class="smpl">authority</a> component, which includes a host identifier and optional TCP port (<a href="#RFC3986" id="rfc.xref.RFC3986.12"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.2.2">Section 3.2.2</a>). The remainder of the URI, consisting of both the hierarchical path component and optional query component, serves as an 1040 1042 identifier for a potential resource within that origin server's name space. … … 1075 1077 TCP port of 443 is assumed if the port subcomponent is empty or not given, and the TCP connection <em class="bcp14">MUST</em> be secured, end-to-end, through the use of strong encryption prior to sending the first HTTP request. 1076 1078 </p> 1077 <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.2 5"></span> <a href="#https.uri" class="smpl">https-URI</a> = "https:" "//" <a href="#uri" class="smpl">authority</a> <a href="#uri" class="smpl">path-abempty</a> [ "?" <a href="#uri" class="smpl">query</a> ]1079 <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.26"></span> <a href="#https.uri" class="smpl">https-URI</a> = "https:" "//" <a href="#uri" class="smpl">authority</a> <a href="#uri" class="smpl">path-abempty</a> [ "?" <a href="#uri" class="smpl">query</a> ] 1078 1080 </pre><p id="rfc.section.2.7.2.p.4">Resources made available via the "https" scheme have no shared identity with the "http" scheme even if their resource identifiers 1079 1081 indicate the same authority (the same host listening to the same TCP port). They are distinct name spaces and are considered … … 1105 1107 the end of the header section, and an optional message body. 1106 1108 </p> 1107 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.2 6"></span> <a href="#http.message" class="smpl">HTTP-message</a> = <a href="#http.message" class="smpl">start-line</a>1109 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.27"></span> <a href="#http.message" class="smpl">HTTP-message</a> = <a href="#http.message" class="smpl">start-line</a> 1108 1110 *( <a href="#header.fields" class="smpl">header-field</a> <a href="#core.rules" class="smpl">CRLF</a> ) 1109 1111 <a href="#core.rules" class="smpl">CRLF</a> … … 1132 1134 request method) and clients are implemented to only expect a response. 1133 1135 </p> 1134 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.2 7"></span> <a href="#http.message" class="smpl">start-line</a> = <a href="#request.line" class="smpl">request-line</a> / <a href="#status.line" class="smpl">status-line</a>1136 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.28"></span> <a href="#http.message" class="smpl">start-line</a> = <a href="#request.line" class="smpl">request-line</a> / <a href="#status.line" class="smpl">status-line</a> 1135 1137 </pre><p id="rfc.section.3.1.p.4">A sender <em class="bcp14">MUST NOT</em> send whitespace between the start-line and the first header field. The presence of such whitespace in a request might be an 1136 1138 attempt to trick a server into ignoring that field or processing the line after it as a new request, either of which might … … 1146 1148 the protocol version, and ending with CRLF. 1147 1149 </p> 1148 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.2 8"></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>1150 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.29"></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> 1149 1151 </pre><div id="rfc.iref.m.2"></div> 1150 1152 <div id="method"> 1151 1153 <p id="rfc.section.3.1.1.p.3">The method token indicates the request method to be performed on the target resource. The request method is case-sensitive.</p> 1152 1154 </div> 1153 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g. 29"></span> <a href="#method" class="smpl">method</a> = <a href="#rule.token.separators" class="smpl">token</a>1155 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#method" class="smpl">method</a> = <a href="#rule.token.separators" class="smpl">token</a> 1154 1156 </pre><p id="rfc.section.3.1.1.p.5">The methods defined by this specification can be found in <a href="p2-semantics.html#methods" title="Request Methods">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.6"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content">[Part2]</cite></a>, along with information regarding the HTTP method registry and considerations for defining new methods. 1155 1157 </p> … … 1173 1175 another space, a possibly-empty textual phrase describing the status code, and ending with CRLF. 1174 1176 </p> 1175 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.3 0"></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.line" class="smpl">status-code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.line" class="smpl">reason-phrase</a> <a href="#core.rules" class="smpl">CRLF</a>1177 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.31"></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.line" class="smpl">status-code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.line" class="smpl">reason-phrase</a> <a href="#core.rules" class="smpl">CRLF</a> 1176 1178 </pre><p id="rfc.section.3.1.2.p.3">The status-code element is a 3-digit integer code describing the result of the server's attempt to understand and satisfy 1177 1179 the client's corresponding request. The rest of the response message is to be interpreted in light of the semantics defined … … 1179 1181 the status codes defined by this specification, considerations for the definition of new status codes, and the IANA registry. 1180 1182 </p> 1181 <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.3 1"></span> <a href="#status.line" class="smpl">status-code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a>1183 <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.32"></span> <a href="#status.line" class="smpl">status-code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a> 1182 1184 </pre><p id="rfc.section.3.1.2.p.5">The reason-phrase element exists for the sole purpose of providing a textual description associated with the numeric status 1183 1185 code, mostly out of deference to earlier Internet application protocols that were more frequently used with interactive text 1184 1186 clients. A client <em class="bcp14">SHOULD</em> ignore the reason-phrase content. 1185 1187 </p> 1186 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.3 2"></span> <a href="#status.line" class="smpl">reason-phrase</a> = *( <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> )1188 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.33"></span> <a href="#status.line" class="smpl">reason-phrase</a> = *( <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> ) 1187 1189 </pre><h2 id="rfc.section.3.2"><a href="#rfc.section.3.2">3.2</a> <a id="header.fields" href="#header.fields">Header Fields</a></h2> 1188 1190 <p id="rfc.section.3.2.p.1">Each HTTP header field consists of a case-insensitive field name followed by a colon (":"), optional whitespace, and the field 1189 1191 value. 1190 1192 </p> 1191 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.3 3"></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> <a href="#header.fields" class="smpl">header-field</a> = <a href="#header.fields" class="smpl">field-name</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.fields" class="smpl">field-value</a> <a href="#rule.whitespace" class="smpl">BWS</a>1193 <div id="rfc.figure.u.18"></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> <a href="#header.fields" class="smpl">header-field</a> = <a href="#header.fields" class="smpl">field-name</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.fields" class="smpl">field-value</a> <a href="#rule.whitespace" class="smpl">BWS</a> 1192 1194 <a href="#header.fields" class="smpl">field-name</a> = <a href="#rule.token.separators" class="smpl">token</a> 1193 1195 <a href="#header.fields" class="smpl">field-value</a> = *( <a href="#header.fields" class="smpl">field-content</a> / <a href="#header.fields" class="smpl">obs-fold</a> ) … … 1249 1251 <p id="rfc.section.3.2.3.p.5"> </p> 1250 1252 </div> 1251 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.3 8"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span> <a href="#rule.whitespace" class="smpl">OWS</a> = *( <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">HTAB</a> )1253 <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> <a href="#rule.whitespace" class="smpl">OWS</a> = *( <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">HTAB</a> ) 1252 1254 ; optional whitespace 1253 1255 <a href="#rule.whitespace" class="smpl">RWS</a> = 1*( <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">HTAB</a> ) … … 1296 1298 </p> 1297 1299 </div> 1298 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.4 1"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span> <a href="#rule.token.separators" class="smpl">word</a> = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a>1300 <div id="rfc.figure.u.20"></div><pre class="inline"><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="#rule.token.separators" class="smpl">word</a> = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a> 1299 1301 1300 1302 <a href="#rule.token.separators" class="smpl">token</a> = 1*<a href="#rule.token.separators" class="smpl">tchar</a> … … 1311 1313 <p id="rfc.section.3.2.6.p.3"> A string of text is parsed as a single word if it is quoted using double-quote marks.</p> 1312 1314 </div> 1313 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.4 5"></span><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span> <a href="#rule.quoted-string" class="smpl">quoted-string</a> = <a href="#core.rules" class="smpl">DQUOTE</a> *( <a href="#rule.quoted-string" class="smpl">qdtext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> ) <a href="#core.rules" class="smpl">DQUOTE</a>1315 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span> <a href="#rule.quoted-string" class="smpl">quoted-string</a> = <a href="#core.rules" class="smpl">DQUOTE</a> *( <a href="#rule.quoted-string" class="smpl">qdtext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> ) <a href="#core.rules" class="smpl">DQUOTE</a> 1314 1316 <a href="#rule.quoted-string" class="smpl">qdtext</a> = <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> /%x21 / %x23-5B / %x5D-7E / <a href="#rule.quoted-string" class="smpl">obs-text</a> 1315 1317 <a href="#rule.quoted-string" class="smpl">obs-text</a> = %x80-FF … … 1317 1319 <p id="rfc.section.3.2.6.p.5"> The backslash octet ("\") can be used as a single-octet quoting mechanism within quoted-string constructs:</p> 1318 1320 </div> 1319 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.4 8"></span> <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> = "\" ( <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> )1321 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.49"></span> <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> = "\" ( <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> ) 1320 1322 </pre><p id="rfc.section.3.2.6.p.7">Recipients that process the value of a quoted-string <em class="bcp14">MUST</em> handle a quoted-pair as if it were replaced by the octet following the backslash. 1321 1323 </p> … … 1328 1330 </p> 1329 1331 </div> 1330 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g. 49"></span><span id="rfc.iref.g.50"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-cpair" class="smpl">quoted-cpair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")"1332 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-cpair" class="smpl">quoted-cpair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")" 1331 1333 <a href="#rule.comment" class="smpl">ctext</a> = <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> / %x21-27 / %x2A-5B / %x5D-7E / <a href="#rule.quoted-string" class="smpl">obs-text</a> 1332 1334 </pre><div id="rule.quoted-cpair"> 1333 1335 <p id="rfc.section.3.2.6.p.11"> The backslash octet ("\") can be used as a single-octet quoting mechanism within comment constructs:</p> 1334 1336 </div> 1335 <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.5 1"></span> <a href="#rule.quoted-cpair" class="smpl">quoted-cpair</a> = "\" ( <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> )1337 <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.52"></span> <a href="#rule.quoted-cpair" class="smpl">quoted-cpair</a> = "\" ( <a href="#core.rules" class="smpl">HTAB</a> / <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> ) 1336 1338 </pre><p id="rfc.section.3.2.6.p.13">Senders <em class="bcp14">SHOULD NOT</em> escape octets in comments that do not require escaping (i.e., other than the backslash octet "\" and the parentheses "(" and 1337 1339 ")"). … … 1341 1343 is identical to the payload body unless a transfer coding has been applied, as described in <a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.1" title="Transfer-Encoding">Section 3.3.1</a>. 1342 1344 </p> 1343 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.5 2"></span> <a href="#message.body" class="smpl">message-body</a> = *OCTET1345 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.53"></span> <a href="#message.body" class="smpl">message-body</a> = *OCTET 1344 1346 </pre><p id="rfc.section.3.3.p.3">The rules for when a message body is allowed in a message differ for requests and responses.</p> 1345 1347 <p id="rfc.section.3.3.p.4">The presence of a message body in a request is signaled by a <a href="#header.content-length" class="smpl">Content-Length</a> or <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> header field. Request message framing is independent of method semantics, even if the method does not define any use for a … … 1356 1358 have been (or will be) applied to the payload body in order to form the message body. Transfer codings are defined in <a href="#transfer.codings" title="Transfer Codings">Section 4</a>. 1357 1359 </p> 1358 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.5 3"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = 1#<a href="#transfer.codings" class="smpl">transfer-coding</a>1360 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.54"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = 1#<a href="#transfer.codings" class="smpl">transfer-coding</a> 1359 1361 </pre><p id="rfc.section.3.3.1.p.3">Transfer-Encoding is analogous to the Content-Transfer-Encoding field of MIME, which was designed to enable safe transport 1360 1362 of binary data over a 7-bit transport service (<a href="#RFC2045" id="rfc.xref.RFC2045.2"><cite title="Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies">[RFC2045]</cite></a>, <a href="http://tools.ietf.org/html/rfc2045#section-6">Section 6</a>). However, safe transport has a different focus for an 8bit-clean transfer protocol. In HTTP's case, Transfer-Encoding is … … 1393 1395 indicates the size of the selected representation (<a href="p2-semantics.html#representations" title="Representations">Section 3</a> of <a href="#Part2" id="rfc.xref.Part2.14"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content">[Part2]</cite></a>). 1394 1396 </p> 1395 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.5 4"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = 1*<a href="#core.rules" class="smpl">DIGIT</a>1397 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.55"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = 1*<a href="#core.rules" class="smpl">DIGIT</a> 1396 1398 </pre><p id="rfc.section.3.3.2.p.3">An example is</p> 1397 1399 <div id="rfc.figure.u.29"></div><pre class="text"> Content-Length: 3495 … … 1533 1535 coding is a property of the message rather than a property of the representation that is being transferred. 1534 1536 </p> 1535 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.5 5"></span><span id="rfc.iref.g.56"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" ; <a href="#chunked.encoding" title="Chunked Transfer Coding">Section 4.1</a>1537 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.56"></span><span id="rfc.iref.g.57"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" ; <a href="#chunked.encoding" title="Chunked Transfer Coding">Section 4.1</a> 1536 1538 / "compress" ; <a href="#compress.coding" title="Compress Coding">Section 4.2.1</a> 1537 1539 / "deflate" ; <a href="#deflate.coding" title="Deflate Coding">Section 4.2.2</a> … … 1542 1544 <p id="rfc.section.4.p.3"> Parameters are in the form of attribute/value pairs.</p> 1543 1545 </div> 1544 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.5 7"></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> <a href="#rule.parameter" class="smpl">transfer-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>1546 <div id="rfc.figure.u.31"></div><pre class="inline"><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> <a href="#rule.parameter" class="smpl">transfer-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> 1545 1547 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#rule.token.separators" class="smpl">token</a> 1546 1548 <a href="#rule.parameter" class="smpl">value</a> = <a href="#rule.token.separators" class="smpl">word</a> … … 1554 1556 for the recipient to verify that it has received the full message. 1555 1557 </p> 1556 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.6 2"></span><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span><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><span id="rfc.iref.g.69"></span><span id="rfc.iref.g.70"></span><span id="rfc.iref.g.71"></span><span id="rfc.iref.g.72"></span> <a href="#chunked.encoding" class="smpl">chunked-body</a> = *<a href="#chunked.encoding" class="smpl">chunk</a>1558 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span><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><span id="rfc.iref.g.69"></span><span id="rfc.iref.g.70"></span><span id="rfc.iref.g.71"></span><span id="rfc.iref.g.72"></span><span id="rfc.iref.g.73"></span> <a href="#chunked.encoding" class="smpl">chunked-body</a> = *<a href="#chunked.encoding" class="smpl">chunk</a> 1557 1559 <a href="#chunked.encoding" class="smpl">last-chunk</a> 1558 1560 <a href="#chunked.encoding" class="smpl">trailer-part</a> … … 1590 1592 and the recipient wishes to confirm an integrity check on the fly. 1591 1593 </p> 1592 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.7 3"></span> <a href="#header.trailer" class="smpl">Trailer</a> = 1#<a href="#header.fields" class="smpl">field-name</a>1594 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.74"></span> <a href="#header.trailer" class="smpl">Trailer</a> = 1#<a href="#header.fields" class="smpl">field-name</a> 1593 1595 </pre><p id="rfc.section.4.1.1.p.4">If no <a href="#header.trailer" class="smpl">Trailer</a> header field is present, the sender of a chunked message body <em class="bcp14">SHOULD</em> send an empty trailer. 1594 1596 </p> … … 1641 1643 </p> 1642 1644 </div> 1643 <div id="rfc.iref.g.7 4"></div>1645 <div id="rfc.iref.g.75"></div> 1644 1646 <h3 id="rfc.section.4.2.3"><a href="#rfc.section.4.2.3">4.2.3</a> <a id="gzip.coding" href="#gzip.coding">Gzip Coding</a></h3> 1645 1647 <p id="rfc.section.4.2.3.p.1">The "gzip" format is produced by the file compression program "gzip" (GNU zip), as described in <a href="#RFC1952" id="rfc.xref.RFC1952.1"><cite title="GZIP file format specification version 4.3">[RFC1952]</cite></a>. This format is a Lempel-Ziv coding (LZ77) with a 32 bit CRC. Recipients <em class="bcp14">SHOULD</em> consider "x-gzip" to be equivalent to "gzip". … … 1653 1655 described in <a href="#transfer.codings" title="Transfer Codings">Section 4</a>), and/or the keyword "trailers". Clients <em class="bcp14">MUST NOT</em> send the chunked transfer coding name in TE; chunked is always acceptable for HTTP/1.1 recipients. 1654 1656 </p> 1655 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.7 5"></span><span id="rfc.iref.g.76"></span><span id="rfc.iref.g.77"></span><span id="rfc.iref.g.78"></span> <a href="#header.te" class="smpl">TE</a> = #<a href="#header.te" class="smpl">t-codings</a>1657 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.76"></span><span id="rfc.iref.g.77"></span><span id="rfc.iref.g.78"></span><span id="rfc.iref.g.79"></span> <a href="#header.te" class="smpl">TE</a> = #<a href="#header.te" class="smpl">t-codings</a> 1656 1658 <a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( <a href="#transfer.codings" class="smpl">transfer-coding</a> [ <a href="#header.te" class="smpl">t-ranking</a> ] ) 1657 1659 <a href="#header.te" class="smpl">t-ranking</a> = <a href="#rule.whitespace" class="smpl">OWS</a> ";" <a href="#rule.whitespace" class="smpl">OWS</a> "q=" <a href="#header.te" class="smpl">rank</a> … … 1715 1717 both the method being requested and whether the request is to a proxy. 1716 1718 </p> 1717 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g. 79"></span><span id="rfc.iref.g.80"></span><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span> <a href="#request-target" class="smpl">request-target</a> = <a href="#origin-form" class="smpl">origin-form</a>1719 <div id="rfc.figure.u.37"></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><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span> <a href="#request-target" class="smpl">request-target</a> = <a href="#origin-form" class="smpl">origin-form</a> 1718 1720 / <a href="#absolute-form" class="smpl">absolute-form</a> 1719 1721 / <a href="#authority-form" class="smpl">authority-form</a> 1720 1722 / <a href="#asterisk-form" class="smpl">asterisk-form</a> 1721 1723 1722 <a href="#origin-form" class="smpl">origin-form</a> = <a href="#uri" class="smpl"> path-absolute</a> [ "?" <a href="#uri" class="smpl">query</a> ]1724 <a href="#origin-form" class="smpl">origin-form</a> = <a href="#uri" class="smpl">absolute-path</a> [ "?" <a href="#uri" class="smpl">query</a> ] 1723 1725 <a href="#absolute-form" class="smpl">absolute-form</a> = <a href="#uri" class="smpl">absolute-URI</a> 1724 1726 <a href="#authority-form" class="smpl">authority-form</a> = <a href="#uri" class="smpl">authority</a> … … 1782 1784 is critical information for handling a request, it <em class="bcp14">SHOULD</em> be sent as the first header field following the request-line. 1783 1785 </p> 1784 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.8 4"></span> <a href="#header.host" class="smpl">Host</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.7.1</a>1786 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.85"></span> <a href="#header.host" class="smpl">Host</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.7.1</a> 1785 1787 </pre><p id="rfc.section.5.4.p.3">A client <em class="bcp14">MUST</em> send a Host header field in all HTTP/1.1 request messages. If the target URI includes an authority component, then the Host 1786 1788 field-value <em class="bcp14">MUST</em> be identical to that authority component after excluding any userinfo (<a href="#http.uri" title="http URI scheme">Section 2.7.1</a>). If the authority component is missing or undefined for the target URI, then the Host header field <em class="bcp14">MUST</em> be sent with an empty field-value. … … 1866 1868 all senders along the request/response chain. 1867 1869 </p> 1868 <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.8 5"></span><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span><span id="rfc.iref.g.88"></span><span id="rfc.iref.g.89"></span><span id="rfc.iref.g.90"></span> <a href="#header.via" class="smpl">Via</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>1870 <div id="rfc.figure.u.51"></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><span id="rfc.iref.g.89"></span><span id="rfc.iref.g.90"></span><span id="rfc.iref.g.91"></span> <a href="#header.via" class="smpl">Via</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> 1869 1871 [ <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#rule.comment" class="smpl">comment</a> ] ) 1870 1872 <a href="#header.via" class="smpl">received-protocol</a> = [ <a href="#header.upgrade" class="smpl">protocol-name</a> "/" ] <a href="#header.upgrade" class="smpl">protocol-version</a> … … 1910 1912 <p id="rfc.section.5.7.2.p.2">If a proxy receives a request-target with a host name that is not a fully qualified domain name, it <em class="bcp14">MAY</em> add its own domain to the host name it received when forwarding the request. A proxy <em class="bcp14">MUST NOT</em> change the host name if it is a fully qualified domain name. 1911 1913 </p> 1912 <p id="rfc.section.5.7.2.p.3">A proxy <em class="bcp14">MUST NOT</em> modify the " path-absolute" and "query" parts of the received request-target when forwarding it to the next inbound server,1914 <p id="rfc.section.5.7.2.p.3">A proxy <em class="bcp14">MUST NOT</em> modify the "absolute-path" and "query" parts of the received request-target when forwarding it to the next inbound server, 1913 1915 except as noted above to replace an empty path with "/" or "*". 1914 1916 </p> … … 1951 1953 </p> 1952 1954 <p id="rfc.section.6.1.p.4">The Connection header field's value has the following grammar:</p> 1953 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.9 1"></span><span id="rfc.iref.g.92"></span> <a href="#header.connection" class="smpl">Connection</a> = 1#<a href="#header.connection" class="smpl">connection-option</a>1955 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.92"></span><span id="rfc.iref.g.93"></span> <a href="#header.connection" class="smpl">Connection</a> = 1#<a href="#header.connection" class="smpl">connection-option</a> 1954 1956 <a href="#header.connection" class="smpl">connection-option</a> = <a href="#rule.token.separators" class="smpl">token</a> 1955 1957 </pre><p id="rfc.section.6.1.p.6">Connection options are case-insensitive.</p> … … 2104 2106 protocols for a future request. 2105 2107 </p> 2106 <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.9 3"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = 1#<a href="#header.upgrade" class="smpl">protocol</a>2108 <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.94"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = 1#<a href="#header.upgrade" class="smpl">protocol</a> 2107 2109 2108 2110 <a href="#header.upgrade" class="smpl">protocol</a> = <a href="#header.upgrade" class="smpl">protocol-name</a> ["/" <a href="#header.upgrade" class="smpl">protocol-version</a>] … … 2881 2883 <p id="rfc.section.A.2.p.23">Use of chunk extensions is deprecated, and line folding in them is disallowed. (<a href="#chunked.encoding" title="Chunked Transfer Coding">Section 4.1</a>) 2882 2884 </p> 2883 <p id="rfc.section.A.2.p.24">The path-absolute + query components of RFC3986 have been used to define the request-target, instead of abs_path from RFC2884 1808.(<a href="#request-target" title="Request Target">Section 5.3</a>)2885 <p id="rfc.section.A.2.p.24">The segment + query components of RFC3986 have been used to define the request-target, instead of abs_path from RFC 1808. 2886 (<a href="#request-target" title="Request Target">Section 5.3</a>) 2885 2887 </p> 2886 2888 <p id="rfc.section.A.2.p.25">The asterisk form of the request-target is only allowed in the OPTIONS method. (<a href="#request-target" title="Request Target">Section 5.3</a>) … … 2975 2977 <a href="#uri" class="smpl">absolute-URI</a> = <absolute-URI, defined in [RFC3986], Section 4.3> 2976 2978 <a href="#absolute-form" class="smpl">absolute-form</a> = absolute-URI 2979 <a href="#uri" class="smpl">absolute-path</a> = 1*( "/" segment ) 2977 2980 <a href="#asterisk-form" class="smpl">asterisk-form</a> = "*" 2978 2981 <a href="#rule.parameter" class="smpl">attribute</a> = token … … 3009 3012 <a href="#header.fields" class="smpl">obs-fold</a> = CRLF ( SP / HTAB ) 3010 3013 <a href="#rule.quoted-string" class="smpl">obs-text</a> = %x80-FF 3011 <a href="#origin-form" class="smpl">origin-form</a> = path-absolute[ "?" query ]3014 <a href="#origin-form" class="smpl">origin-form</a> = absolute-path [ "?" query ] 3012 3015 3013 3016 <a href="#uri" class="smpl">partial-URI</a> = relative-part [ "?" query ] 3014 3017 <a href="#uri" class="smpl">path-abempty</a> = <path-abempty, defined in [RFC3986], Section 3.3> 3015 <a href="#uri" class="smpl">path-absolute</a> = <path-absolute, defined in [RFC3986], Section 3.3>3016 3018 <a href="#uri" class="smpl">port</a> = <port, defined in [RFC3986], Section 3.2.3> 3017 3019 <a href="#header.upgrade" class="smpl">protocol</a> = protocol-name [ "/" protocol-version ] … … 3041 3043 asterisk-form 3042 3044 3045 <a href="#uri" class="smpl">segment</a> = <segment, defined in [RFC3986], Section 3.3> 3043 3046 <a href="#rule.token.separators" class="smpl">special</a> = "(" / ")" / "<" / ">" / "@" / "," / ";" / ":" / "\" / 3044 3047 DQUOTE / "/" / "[" / "]" / "?" / "=" / "{" / "}" … … 3104 3107 </li> 3105 3108 <li> <<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/420">http://tools.ietf.org/wg/httpbis/trac/ticket/420</a>>: "Content-Length SHOULD be sent" 3109 </li> 3110 <li> <<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/431">http://tools.ietf.org/wg/httpbis/trac/ticket/431</a>>: "origin-form does not allow path starting with "//"" 3106 3111 </li> 3107 3112 </ul> … … 3152 3157 <li><tt>Grammar</tt> 3153 3158 <ul> 3154 <li><tt>absolute-form</tt> <a href="#rfc.iref.g.81"><b>5.3</b></a></li> 3159 <li><tt>absolute-form</tt> <a href="#rfc.iref.g.82"><b>5.3</b></a></li> 3160 <li><tt>absolute-path</tt> <a href="#rfc.iref.g.19"><b>2.7</b></a></li> 3155 3161 <li><tt>absolute-URI</tt> <a href="#rfc.iref.g.17"><b>2.7</b></a></li> 3156 3162 <li>ALPHA <a href="#rfc.iref.g.1"><b>1.2</b></a></li> 3157 <li><tt>asterisk-form</tt> <a href="#rfc.iref.g.8 3"><b>5.3</b></a></li>3158 <li><tt>attribute</tt> <a href="#rfc.iref.g.5 8"><b>4</b></a></li>3163 <li><tt>asterisk-form</tt> <a href="#rfc.iref.g.84"><b>5.3</b></a></li> 3164 <li><tt>attribute</tt> <a href="#rfc.iref.g.59"><b>4</b></a></li> 3159 3165 <li><tt>authority</tt> <a href="#rfc.iref.g.18"><b>2.7</b></a></li> 3160 <li><tt>authority-form</tt> <a href="#rfc.iref.g.8 2"><b>5.3</b></a></li>3161 <li><tt>BWS</tt> <a href="#rfc.iref.g.4 0"><b>3.2.3</b></a></li>3162 <li><tt>chunk</tt> <a href="#rfc.iref.g.6 3"><b>4.1</b></a></li>3163 <li><tt>chunk-data</tt> <a href="#rfc.iref.g. 69"><b>4.1</b></a></li>3164 <li><tt>chunk-ext</tt> <a href="#rfc.iref.g.6 6"><b>4.1</b></a></li>3165 <li><tt>chunk-ext-name</tt> <a href="#rfc.iref.g.6 7"><b>4.1</b></a></li>3166 <li><tt>chunk-ext-val</tt> <a href="#rfc.iref.g.6 8"><b>4.1</b></a></li>3167 <li><tt>chunk-size</tt> <a href="#rfc.iref.g.6 4"><b>4.1</b></a></li>3168 <li><tt>chunked-body</tt> <a href="#rfc.iref.g.6 2"><b>4.1</b></a></li>3169 <li><tt>comment</tt> <a href="#rfc.iref.g. 49"><b>3.2.6</b></a></li>3170 <li><tt>Connection</tt> <a href="#rfc.iref.g.9 1"><b>6.1</b></a></li>3171 <li><tt>connection-option</tt> <a href="#rfc.iref.g.9 2"><b>6.1</b></a></li>3172 <li><tt>Content-Length</tt> <a href="#rfc.iref.g.5 4"><b>3.3.2</b></a></li>3166 <li><tt>authority-form</tt> <a href="#rfc.iref.g.83"><b>5.3</b></a></li> 3167 <li><tt>BWS</tt> <a href="#rfc.iref.g.41"><b>3.2.3</b></a></li> 3168 <li><tt>chunk</tt> <a href="#rfc.iref.g.64"><b>4.1</b></a></li> 3169 <li><tt>chunk-data</tt> <a href="#rfc.iref.g.70"><b>4.1</b></a></li> 3170 <li><tt>chunk-ext</tt> <a href="#rfc.iref.g.67"><b>4.1</b></a></li> 3171 <li><tt>chunk-ext-name</tt> <a href="#rfc.iref.g.68"><b>4.1</b></a></li> 3172 <li><tt>chunk-ext-val</tt> <a href="#rfc.iref.g.69"><b>4.1</b></a></li> 3173 <li><tt>chunk-size</tt> <a href="#rfc.iref.g.65"><b>4.1</b></a></li> 3174 <li><tt>chunked-body</tt> <a href="#rfc.iref.g.63"><b>4.1</b></a></li> 3175 <li><tt>comment</tt> <a href="#rfc.iref.g.50"><b>3.2.6</b></a></li> 3176 <li><tt>Connection</tt> <a href="#rfc.iref.g.92"><b>6.1</b></a></li> 3177 <li><tt>connection-option</tt> <a href="#rfc.iref.g.93"><b>6.1</b></a></li> 3178 <li><tt>Content-Length</tt> <a href="#rfc.iref.g.55"><b>3.3.2</b></a></li> 3173 3179 <li>CR <a href="#rfc.iref.g.2"><b>1.2</b></a></li> 3174 3180 <li>CRLF <a href="#rfc.iref.g.3"><b>1.2</b></a></li> 3175 <li><tt>ctext</tt> <a href="#rfc.iref.g.5 0"><b>3.2.6</b></a></li>3181 <li><tt>ctext</tt> <a href="#rfc.iref.g.51"><b>3.2.6</b></a></li> 3176 3182 <li>CTL <a href="#rfc.iref.g.4"><b>1.2</b></a></li> 3177 <li><tt>date2</tt> <a href="#rfc.iref.g.6 0"><b>4</b></a></li>3178 <li><tt>date3</tt> <a href="#rfc.iref.g.6 1"><b>4</b></a></li>3183 <li><tt>date2</tt> <a href="#rfc.iref.g.61"><b>4</b></a></li> 3184 <li><tt>date3</tt> <a href="#rfc.iref.g.62"><b>4</b></a></li> 3179 3185 <li>DIGIT <a href="#rfc.iref.g.5"><b>1.2</b></a></li> 3180 3186 <li>DQUOTE <a href="#rfc.iref.g.6"><b>1.2</b></a></li> 3181 <li><tt>field-content</tt> <a href="#rfc.iref.g.3 6"><b>3.2</b></a></li>3182 <li><tt>field-name</tt> <a href="#rfc.iref.g.3 4"><b>3.2</b></a></li>3183 <li><tt>field-value</tt> <a href="#rfc.iref.g.3 5"><b>3.2</b></a></li>3184 <li><tt>header-field</tt> <a href="#rfc.iref.g.3 3"><b>3.2</b></a></li>3187 <li><tt>field-content</tt> <a href="#rfc.iref.g.37"><b>3.2</b></a></li> 3188 <li><tt>field-name</tt> <a href="#rfc.iref.g.35"><b>3.2</b></a></li> 3189 <li><tt>field-value</tt> <a href="#rfc.iref.g.36"><b>3.2</b></a></li> 3190 <li><tt>header-field</tt> <a href="#rfc.iref.g.34"><b>3.2</b></a></li> 3185 3191 <li>HEXDIG <a href="#rfc.iref.g.7"><b>1.2</b></a></li> 3186 <li><tt>Host</tt> <a href="#rfc.iref.g.8 4"><b>5.4</b></a></li>3192 <li><tt>Host</tt> <a href="#rfc.iref.g.85"><b>5.4</b></a></li> 3187 3193 <li>HTAB <a href="#rfc.iref.g.8"><b>1.2</b></a></li> 3188 <li><tt>HTTP-message</tt> <a href="#rfc.iref.g.2 6"><b>3</b></a></li>3194 <li><tt>HTTP-message</tt> <a href="#rfc.iref.g.27"><b>3</b></a></li> 3189 3195 <li><tt>HTTP-name</tt> <a href="#rfc.iref.g.15"><b>2.6</b></a></li> 3190 <li><tt>http-URI</tt> <a href="#rfc.iref.g.2 4"><b>2.7.1</b></a></li>3196 <li><tt>http-URI</tt> <a href="#rfc.iref.g.25"><b>2.7.1</b></a></li> 3191 3197 <li><tt>HTTP-version</tt> <a href="#rfc.iref.g.14"><b>2.6</b></a></li> 3192 <li><tt>https-URI</tt> <a href="#rfc.iref.g.2 5"><b>2.7.2</b></a></li>3193 <li><tt>last-chunk</tt> <a href="#rfc.iref.g.6 5"><b>4.1</b></a></li>3198 <li><tt>https-URI</tt> <a href="#rfc.iref.g.26"><b>2.7.2</b></a></li> 3199 <li><tt>last-chunk</tt> <a href="#rfc.iref.g.66"><b>4.1</b></a></li> 3194 3200 <li>LF <a href="#rfc.iref.g.9"><b>1.2</b></a></li> 3195 <li><tt>message-body</tt> <a href="#rfc.iref.g.5 2"><b>3.3</b></a></li>3196 <li><tt>method</tt> <a href="#rfc.iref.g. 29"><b>3.1.1</b></a></li>3197 <li><tt>obs-fold</tt> <a href="#rfc.iref.g.3 7"><b>3.2</b></a></li>3198 <li><tt>obs-text</tt> <a href="#rfc.iref.g.4 7"><b>3.2.6</b></a></li>3201 <li><tt>message-body</tt> <a href="#rfc.iref.g.53"><b>3.3</b></a></li> 3202 <li><tt>method</tt> <a href="#rfc.iref.g.30"><b>3.1.1</b></a></li> 3203 <li><tt>obs-fold</tt> <a href="#rfc.iref.g.38"><b>3.2</b></a></li> 3204 <li><tt>obs-text</tt> <a href="#rfc.iref.g.48"><b>3.2.6</b></a></li> 3199 3205 <li>OCTET <a href="#rfc.iref.g.10"><b>1.2</b></a></li> 3200 <li><tt>origin-form</tt> <a href="#rfc.iref.g.80"><b>5.3</b></a></li> 3201 <li><tt>OWS</tt> <a href="#rfc.iref.g.38"><b>3.2.3</b></a></li> 3202 <li><tt>partial-URI</tt> <a href="#rfc.iref.g.23"><b>2.7</b></a></li> 3203 <li><tt>path-absolute</tt> <a href="#rfc.iref.g.19"><b>2.7</b></a></li> 3206 <li><tt>origin-form</tt> <a href="#rfc.iref.g.81"><b>5.3</b></a></li> 3207 <li><tt>OWS</tt> <a href="#rfc.iref.g.39"><b>3.2.3</b></a></li> 3208 <li><tt>partial-URI</tt> <a href="#rfc.iref.g.24"><b>2.7</b></a></li> 3204 3209 <li><tt>port</tt> <a href="#rfc.iref.g.20"><b>2.7</b></a></li> 3205 <li><tt>protocol-name</tt> <a href="#rfc.iref.g.8 7"><b>5.7.1</b></a></li>3206 <li><tt>protocol-version</tt> <a href="#rfc.iref.g.8 8"><b>5.7.1</b></a></li>3207 <li><tt>pseudonym</tt> <a href="#rfc.iref.g.9 0"><b>5.7.1</b></a></li>3208 <li><tt>qdtext</tt> <a href="#rfc.iref.g.4 6"><b>3.2.6</b></a></li>3209 <li><tt>qdtext-nf</tt> <a href="#rfc.iref.g.7 2"><b>4.1</b></a></li>3210 <li><tt>protocol-name</tt> <a href="#rfc.iref.g.88"><b>5.7.1</b></a></li> 3211 <li><tt>protocol-version</tt> <a href="#rfc.iref.g.89"><b>5.7.1</b></a></li> 3212 <li><tt>pseudonym</tt> <a href="#rfc.iref.g.91"><b>5.7.1</b></a></li> 3213 <li><tt>qdtext</tt> <a href="#rfc.iref.g.47"><b>3.2.6</b></a></li> 3214 <li><tt>qdtext-nf</tt> <a href="#rfc.iref.g.73"><b>4.1</b></a></li> 3210 3215 <li><tt>query</tt> <a href="#rfc.iref.g.21"><b>2.7</b></a></li> 3211 <li><tt>quoted-cpair</tt> <a href="#rfc.iref.g.51"><b>3.2.6</b></a></li> 3212 <li><tt>quoted-pair</tt> <a href="#rfc.iref.g.48"><b>3.2.6</b></a></li> 3213 <li><tt>quoted-str-nf</tt> <a href="#rfc.iref.g.71"><b>4.1</b></a></li> 3214 <li><tt>quoted-string</tt> <a href="#rfc.iref.g.45"><b>3.2.6</b></a></li> 3215 <li><tt>rank</tt> <a href="#rfc.iref.g.78"><b>4.3</b></a></li> 3216 <li><tt>reason-phrase</tt> <a href="#rfc.iref.g.32"><b>3.1.2</b></a></li> 3217 <li><tt>received-by</tt> <a href="#rfc.iref.g.89"><b>5.7.1</b></a></li> 3218 <li><tt>received-protocol</tt> <a href="#rfc.iref.g.86"><b>5.7.1</b></a></li> 3219 <li><tt>request-line</tt> <a href="#rfc.iref.g.28"><b>3.1.1</b></a></li> 3220 <li><tt>request-target</tt> <a href="#rfc.iref.g.79"><b>5.3</b></a></li> 3221 <li><tt>RWS</tt> <a href="#rfc.iref.g.39"><b>3.2.3</b></a></li> 3216 <li><tt>quoted-cpair</tt> <a href="#rfc.iref.g.52"><b>3.2.6</b></a></li> 3217 <li><tt>quoted-pair</tt> <a href="#rfc.iref.g.49"><b>3.2.6</b></a></li> 3218 <li><tt>quoted-str-nf</tt> <a href="#rfc.iref.g.72"><b>4.1</b></a></li> 3219 <li><tt>quoted-string</tt> <a href="#rfc.iref.g.46"><b>3.2.6</b></a></li> 3220 <li><tt>rank</tt> <a href="#rfc.iref.g.79"><b>4.3</b></a></li> 3221 <li><tt>reason-phrase</tt> <a href="#rfc.iref.g.33"><b>3.1.2</b></a></li> 3222 <li><tt>received-by</tt> <a href="#rfc.iref.g.90"><b>5.7.1</b></a></li> 3223 <li><tt>received-protocol</tt> <a href="#rfc.iref.g.87"><b>5.7.1</b></a></li> 3224 <li><tt>request-line</tt> <a href="#rfc.iref.g.29"><b>3.1.1</b></a></li> 3225 <li><tt>request-target</tt> <a href="#rfc.iref.g.80"><b>5.3</b></a></li> 3226 <li><tt>RWS</tt> <a href="#rfc.iref.g.40"><b>3.2.3</b></a></li> 3227 <li><tt>segment</tt> <a href="#rfc.iref.g.22"><b>2.7</b></a></li> 3222 3228 <li>SP <a href="#rfc.iref.g.11"><b>1.2</b></a></li> 3223 <li><tt>special</tt> <a href="#rfc.iref.g.4 4"><b>3.2.6</b></a></li>3224 <li><tt>start-line</tt> <a href="#rfc.iref.g.2 7"><b>3.1</b></a></li>3225 <li><tt>status-code</tt> <a href="#rfc.iref.g.3 1"><b>3.1.2</b></a></li>3226 <li><tt>status-line</tt> <a href="#rfc.iref.g.3 0"><b>3.1.2</b></a></li>3227 <li><tt>t-codings</tt> <a href="#rfc.iref.g.7 6"><b>4.3</b></a></li>3228 <li><tt>t-ranking</tt> <a href="#rfc.iref.g.7 7"><b>4.3</b></a></li>3229 <li><tt>tchar</tt> <a href="#rfc.iref.g.4 3"><b>3.2.6</b></a></li>3230 <li><tt>TE</tt> <a href="#rfc.iref.g.7 5"><b>4.3</b></a></li>3231 <li><tt>token</tt> <a href="#rfc.iref.g.4 2"><b>3.2.6</b></a></li>3232 <li><tt>Trailer</tt> <a href="#rfc.iref.g.7 3"><b>4.1.1</b></a></li>3233 <li><tt>trailer-part</tt> <a href="#rfc.iref.g.7 0"><b>4.1</b></a></li>3234 <li><tt>transfer-coding</tt> <a href="#rfc.iref.g.5 5"><b>4</b></a></li>3235 <li><tt>Transfer-Encoding</tt> <a href="#rfc.iref.g.5 3"><b>3.3.1</b></a></li>3236 <li><tt>transfer-extension</tt> <a href="#rfc.iref.g.5 6"><b>4</b></a></li>3237 <li><tt>transfer-parameter</tt> <a href="#rfc.iref.g.5 7"><b>4</b></a></li>3238 <li><tt>Upgrade</tt> <a href="#rfc.iref.g.9 3"><b>6.7</b></a></li>3239 <li><tt>uri-host</tt> <a href="#rfc.iref.g.2 2"><b>2.7</b></a></li>3229 <li><tt>special</tt> <a href="#rfc.iref.g.45"><b>3.2.6</b></a></li> 3230 <li><tt>start-line</tt> <a href="#rfc.iref.g.28"><b>3.1</b></a></li> 3231 <li><tt>status-code</tt> <a href="#rfc.iref.g.32"><b>3.1.2</b></a></li> 3232 <li><tt>status-line</tt> <a href="#rfc.iref.g.31"><b>3.1.2</b></a></li> 3233 <li><tt>t-codings</tt> <a href="#rfc.iref.g.77"><b>4.3</b></a></li> 3234 <li><tt>t-ranking</tt> <a href="#rfc.iref.g.78"><b>4.3</b></a></li> 3235 <li><tt>tchar</tt> <a href="#rfc.iref.g.44"><b>3.2.6</b></a></li> 3236 <li><tt>TE</tt> <a href="#rfc.iref.g.76"><b>4.3</b></a></li> 3237 <li><tt>token</tt> <a href="#rfc.iref.g.43"><b>3.2.6</b></a></li> 3238 <li><tt>Trailer</tt> <a href="#rfc.iref.g.74"><b>4.1.1</b></a></li> 3239 <li><tt>trailer-part</tt> <a href="#rfc.iref.g.71"><b>4.1</b></a></li> 3240 <li><tt>transfer-coding</tt> <a href="#rfc.iref.g.56"><b>4</b></a></li> 3241 <li><tt>Transfer-Encoding</tt> <a href="#rfc.iref.g.54"><b>3.3.1</b></a></li> 3242 <li><tt>transfer-extension</tt> <a href="#rfc.iref.g.57"><b>4</b></a></li> 3243 <li><tt>transfer-parameter</tt> <a href="#rfc.iref.g.58"><b>4</b></a></li> 3244 <li><tt>Upgrade</tt> <a href="#rfc.iref.g.94"><b>6.7</b></a></li> 3245 <li><tt>uri-host</tt> <a href="#rfc.iref.g.23"><b>2.7</b></a></li> 3240 3246 <li><tt>URI-reference</tt> <a href="#rfc.iref.g.16"><b>2.7</b></a></li> 3241 <li><tt>value</tt> <a href="#rfc.iref.g. 59"><b>4</b></a></li>3247 <li><tt>value</tt> <a href="#rfc.iref.g.60"><b>4</b></a></li> 3242 3248 <li>VCHAR <a href="#rfc.iref.g.12"><b>1.2</b></a></li> 3243 <li><tt>Via</tt> <a href="#rfc.iref.g.8 5"><b>5.7.1</b></a></li>3244 <li><tt>word</tt> <a href="#rfc.iref.g.4 1"><b>3.2.6</b></a></li>3249 <li><tt>Via</tt> <a href="#rfc.iref.g.86"><b>5.7.1</b></a></li> 3250 <li><tt>word</tt> <a href="#rfc.iref.g.42"><b>3.2.6</b></a></li> 3245 3251 </ul> 3246 3252 </li> 3247 <li>gzip (Coding Format) <a href="#rfc.iref.g.7 4">4.2.3</a></li>3253 <li>gzip (Coding Format) <a href="#rfc.iref.g.75">4.2.3</a></li> 3248 3254 </ul> 3249 3255 </li> … … 3371 3377 <li><em>Section 3.2.1</em> <a href="#rfc.xref.RFC3986.13">2.7.1</a></li> 3372 3378 <li><em>Section 3.2.2</em> <a href="#rfc.xref.RFC3986.11">2.7</a>, <a href="#rfc.xref.RFC3986.12">2.7.1</a></li> 3373 <li><em>Section 3.2.3</em> <a href="#rfc.xref.RFC3986. 9">2.7</a></li>3374 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC3986.7">2.7</a>, <a href="#rfc.xref.RFC3986. 8">2.7</a></li>3375 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC3986. 10">2.7</a></li>3379 <li><em>Section 3.2.3</em> <a href="#rfc.xref.RFC3986.8">2.7</a></li> 3380 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC3986.7">2.7</a>, <a href="#rfc.xref.RFC3986.10">2.7</a></li> 3381 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC3986.9">2.7</a></li> 3376 3382 <li><em>Section 3.5</em> <a href="#rfc.xref.RFC3986.16">5.1</a></li> 3377 3383 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC3986.3">2.7</a></li> -
draft-ietf-httpbis/latest/p1-messaging.xml
r2178 r2181 779 779 <x:anchor-alias value="authority"/> 780 780 <x:anchor-alias value="path-abempty"/> 781 <x:anchor-alias value="path-absolute"/>782 781 <x:anchor-alias value="port"/> 783 782 <x:anchor-alias value="query"/> 783 <x:anchor-alias value="segment"/> 784 784 <x:anchor-alias value="uri-host"/> 785 <x:anchor-alias value="absolute-path"/> 785 786 <x:anchor-alias value="partial-URI"/> 786 787 <t> 787 788 This specification adopts the definitions of "URI-reference", 788 789 "absolute-URI", "relative-part", "port", "host", 789 "path-abempty", " path-absolute", "query", and "authority" from the790 "path-abempty", "query", "segment", and "authority" from the 790 791 URI generic syntax. 791 In addition, we define a partial-URI rule for protocol elements 792 In addition, we define an "absolute-path" rule (that differs from 793 RFC 3986's "path-absolute" in that it allows a leading "//") 794 and a "partial-URI" rule for protocol elements 792 795 that allow a relative URI but not a fragment. 793 796 </t> 794 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="URI-reference"><!--exported production--></iref><iref primary="true" item="Grammar" subitem="absolute-URI"/><iref primary="true" item="Grammar" subitem="authority"/><iref primary="true" item="Grammar" subitem=" path-absolute"/><iref primary="true" item="Grammar" subitem="port"/><iref primary="true" item="Grammar" subitem="query"/><iref primary="true" item="Grammar" subitem="uri-host"/><iref primary="true" item="Grammar" subitem="partial-URI"><!--exported production--></iref>797 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="URI-reference"><!--exported production--></iref><iref primary="true" item="Grammar" subitem="absolute-URI"/><iref primary="true" item="Grammar" subitem="authority"/><iref primary="true" item="Grammar" subitem="absolute-path"/><iref primary="true" item="Grammar" subitem="port"/><iref primary="true" item="Grammar" subitem="query"/><iref primary="true" item="Grammar" subitem="segment"/><iref primary="true" item="Grammar" subitem="uri-host"/><iref primary="true" item="Grammar" subitem="partial-URI"><!--exported production--></iref> 795 798 <x:ref>URI-reference</x:ref> = <URI-reference, defined in <xref target="RFC3986" x:fmt="," x:sec="4.1"/>> 796 799 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in <xref target="RFC3986" x:fmt="," x:sec="4.3"/>> … … 798 801 <x:ref>authority</x:ref> = <authority, defined in <xref target="RFC3986" x:fmt="," x:sec="3.2"/>> 799 802 <x:ref>path-abempty</x:ref> = <path-abempty, defined in <xref target="RFC3986" x:fmt="," x:sec="3.3"/>> 800 <x:ref>path-absolute</x:ref> = <path-absolute, defined in <xref target="RFC3986" x:fmt="," x:sec="3.3"/>>801 803 <x:ref>port</x:ref> = <port, defined in <xref target="RFC3986" x:fmt="," x:sec="3.2.3"/>> 802 804 <x:ref>query</x:ref> = <query, defined in <xref target="RFC3986" x:fmt="," x:sec="3.4"/>> 805 <x:ref>segment</x:ref> = <segment, defined in <xref target="RFC3986" x:fmt="," x:sec="3.3"/>> 803 806 <x:ref>uri-host</x:ref> = <host, defined in <xref target="RFC3986" x:fmt="," x:sec="3.2.2"/>> 804 807 808 <x:ref>absolute-path</x:ref> = 1*( "/" segment ) 805 809 <x:ref>partial-URI</x:ref> = relative-part [ "?" query ] 806 810 </artwork></figure> … … 2230 2234 / <x:ref>asterisk-form</x:ref> 2231 2235 2232 <x:ref>origin-form</x:ref> = <x:ref> path-absolute</x:ref> [ "?" <x:ref>query</x:ref> ]2236 <x:ref>origin-form</x:ref> = <x:ref>absolute-path</x:ref> [ "?" <x:ref>query</x:ref> ] 2233 2237 <x:ref>absolute-form</x:ref> = <x:ref>absolute-URI</x:ref> 2234 2238 <x:ref>authority-form</x:ref> = <x:ref>authority</x:ref> … … 2647 2651 </t> 2648 2652 <t> 2649 A proxy &MUST-NOT; modify the " path-absolute" and "query" parts of the2653 A proxy &MUST-NOT; modify the "absolute-path" and "query" parts of the 2650 2654 received request-target when forwarding it to the next inbound server, 2651 2655 except as noted above to replace an empty path with "/" or "*". … … 4857 4861 </t> 4858 4862 <t> 4859 The path-absolute+ query components of RFC3986 have been used to define the4863 The segment + query components of RFC3986 have been used to define the 4860 4864 request-target, instead of abs_path from RFC 1808. 4861 4865 (<xref target="request-target"/>) … … 5030 5034 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in [RFC3986], Section 4.3> 5031 5035 <x:ref>absolute-form</x:ref> = absolute-URI 5036 <x:ref>absolute-path</x:ref> = 1*( "/" segment ) 5032 5037 <x:ref>asterisk-form</x:ref> = "*" 5033 5038 <x:ref>attribute</x:ref> = token … … 5064 5069 <x:ref>obs-fold</x:ref> = CRLF ( SP / HTAB ) 5065 5070 <x:ref>obs-text</x:ref> = %x80-FF 5066 <x:ref>origin-form</x:ref> = path-absolute[ "?" query ]5071 <x:ref>origin-form</x:ref> = absolute-path [ "?" query ] 5067 5072 5068 5073 <x:ref>partial-URI</x:ref> = relative-part [ "?" query ] 5069 5074 <x:ref>path-abempty</x:ref> = <path-abempty, defined in [RFC3986], Section 3.3> 5070 <x:ref>path-absolute</x:ref> = <path-absolute, defined in [RFC3986], Section 3.3>5071 5075 <x:ref>port</x:ref> = <port, defined in [RFC3986], Section 3.2.3> 5072 5076 <x:ref>protocol</x:ref> = protocol-name [ "/" protocol-version ] … … 5096 5100 asterisk-form 5097 5101 5102 <x:ref>segment</x:ref> = <segment, defined in [RFC3986], Section 3.3> 5098 5103 <x:ref>special</x:ref> = "(" / ")" / "<" / ">" / "@" / "," / ";" / ":" / "\" / 5099 5104 DQUOTE / "/" / "[" / "]" / "?" / "=" / "{" / "}" … … 5205 5210 "Content-Length SHOULD be sent" 5206 5211 </t> 5212 <t> 5213 <eref target="http://tools.ietf.org/wg/httpbis/trac/ticket/431"/>: 5214 "origin-form does not allow path starting with "//"" 5215 </t> 5207 5216 </list> 5208 5217 </t>
Note: See TracChangeset
for help on using the changeset viewer.