Changeset 649 for draft-ietf-httpbis
- Timestamp:
- 28/07/09 16:02:11 (13 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p1-messaging.html
r648 r649 966 966 with a resource via HTTP. More information on the scope of URIs and resources can be found in <a href="#RFC3986" id="rfc.xref.RFC3986.3"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>. 967 967 </p> 968 <p id="rfc.section.2.6.p.2">This specification adopts the definitions of "URI-reference", "absolute-URI", "relative-part", " fragment", "port", "host",969 "path-ab empty", "path-absolute", "query", and "authority" from <a href="#RFC3986" id="rfc.xref.RFC3986.4"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>. In addition, we define a partial-URI rule for protocol elements that allow a relative URI without a fragment.968 <p id="rfc.section.2.6.p.2">This specification adopts the definitions of "URI-reference", "absolute-URI", "relative-part", "port", "host", "path-abempty", 969 "path-absolute", "query", and "authority" from <a href="#RFC3986" id="rfc.xref.RFC3986.4"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>. In addition, we define a partial-URI rule for protocol elements that allow a relative URI without a fragment. 970 970 </p> 971 971 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.26"></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> <a href="#uri" class="smpl">URI</a> = <URI, 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-3">Section 3</a>> … … 974 974 <a href="#uri" class="smpl">relative-part</a> = <relative-part, 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-4.2">Section 4.2</a>> 975 975 <a href="#uri" class="smpl">authority</a> = <authority, 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">Section 3.2</a>> 976 <a href="#uri" class="smpl">fragment</a> = <fragment, 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.5">Section 3.5</a>> 977 <a href="#uri" class="smpl">path-abempty</a> = <path-abempty, 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.3">Section 3.3</a>> 978 <a href="#uri" class="smpl">path-absolute</a> = <path-absolute, defined in <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.3">Section 3.3</a>> 979 <a href="#uri" class="smpl">port</a> = <port, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.13"><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>> 980 <a href="#uri" class="smpl">query</a> = <query, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.14"><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>> 981 <a href="#uri" class="smpl">uri-host</a> = <host, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.15"><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>> 976 <a href="#uri" class="smpl">path-abempty</a> = <path-abempty, 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>> 977 <a href="#uri" class="smpl">path-absolute</a> = <path-absolute, 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.3">Section 3.3</a>> 978 <a href="#uri" class="smpl">port</a> = <port, defined in <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.3">Section 3.2.3</a>> 979 <a href="#uri" class="smpl">query</a> = <query, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.13"><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>> 980 <a href="#uri" class="smpl">uri-host</a> = <host, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.14"><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>> 982 981 983 982 <a href="#uri" class="smpl">partial-URI</a> = relative-part [ "?" query ] … … 996 995 </p> 997 996 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.33"></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> ] 998 </pre><p id="rfc.section.2.6.1.p.3">The host identifier within an <a href="#uri" class="smpl">authority</a> component is defined in <a href="#RFC3986" id="rfc.xref.RFC3986.1 6"><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>. If host is provided as an IP literal or IPv4 address, then the HTTP server is any listener on the indicated TCP port at997 </pre><p id="rfc.section.2.6.1.p.3">The host identifier within an <a href="#uri" class="smpl">authority</a> component is defined in <a href="#RFC3986" id="rfc.xref.RFC3986.15"><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>. If host is provided as an IP literal or IPv4 address, then the HTTP server is any listener on the indicated TCP port at 999 998 that IP address. If host is a registered name, then that name is considered an indirect identifier and the recipient might 1000 999 use a name resolution service, such as DNS, to find the address of a listener for that host. The host <em class="bcp14">MUST NOT</em> be empty; if an "http" URI is received with an empty host, then it <em class="bcp14">MUST</em> be rejected as invalid. If the port subcomponent is empty or not given, then TCP port 80 is assumed (the default reserved … … 1034 1033 <h3 id="rfc.section.2.6.3"><a href="#rfc.section.2.6.3">2.6.3</a> <a id="uri.comparison" href="#uri.comparison">http and https URI Normalization and Comparison</a></h3> 1035 1034 <p id="rfc.section.2.6.3.p.1">Since the "http" and "https" schemes conform to the URI generic syntax, such URIs are normalized and compared according to 1036 the algorithm defined in <a href="#RFC3986" id="rfc.xref.RFC3986.1 7"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-6">Section 6</a>, using the defaults described above for each scheme.1035 the algorithm defined in <a href="#RFC3986" id="rfc.xref.RFC3986.16"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-6">Section 6</a>, using the defaults described above for each scheme. 1037 1036 </p> 1038 1037 <p id="rfc.section.2.6.3.p.2">If the port is equal to the default port for a scheme, the normal form is to elide the port subcomponent. Likewise, an empty 1039 1038 path component is equivalent to an absolute path of "/", so the normal form is to provide a path of "/" instead. The scheme 1040 1039 and host are case-insensitive and normally provided in lowercase; all other components are compared in a case-sensitive manner. 1041 Characters other than those in the "reserved" set are equivalent to their percent-encoded octets (see <a href="#RFC3986" id="rfc.xref.RFC3986.1 8"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>): the normal form is to not encode them.1040 Characters other than those in the "reserved" set are equivalent to their percent-encoded octets (see <a href="#RFC3986" id="rfc.xref.RFC3986.17"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>): the normal form is to not encode them. 1042 1041 </p> 1043 1042 <p id="rfc.section.2.6.3.p.3">For example, the following three URIs are equivalent:</p> … … 1290 1289 Host: www.example.org:8001 1291 1290 </pre> <p>after connecting to port 8001 of host "www.example.org".</p> 1292 <p id="rfc.section.4.1.2.p.15">The request-target is transmitted in the format specified in <a href="#http.uri" title="http URI scheme">Section 2.6.1</a>. If the request-target is percent-encoded (<a href="#RFC3986" id="rfc.xref.RFC3986.1 9"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>), the origin server <em class="bcp14">MUST</em> decode the request-target in order to properly interpret the request. Servers <em class="bcp14">SHOULD</em> respond to invalid request-targets with an appropriate status code.1291 <p id="rfc.section.4.1.2.p.15">The request-target is transmitted in the format specified in <a href="#http.uri" title="http URI scheme">Section 2.6.1</a>. If the request-target is percent-encoded (<a href="#RFC3986" id="rfc.xref.RFC3986.18"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>), the origin server <em class="bcp14">MUST</em> decode the request-target in order to properly interpret the request. Servers <em class="bcp14">SHOULD</em> respond to invalid request-targets with an appropriate status code. 1293 1292 </p> 1294 1293 <p id="rfc.section.4.1.2.p.16">A transparent proxy <em class="bcp14">MUST NOT</em> rewrite the "path-absolute" part of the received request-target when forwarding it to the next inbound server, except as noted … … 2741 2740 <a href="#header.fields" class="smpl">field-name</a> = token 2742 2741 <a href="#header.fields" class="smpl">field-value</a> = *( field-content / OWS ) 2743 <a href="#uri" class="smpl">fragment</a> = <fragment, defined in [RFC3986], Section 3.5>2744 2742 2745 2743 <a href="#general.header.fields" class="smpl">general-header</a> = Cache-Control / Connection / Date / Pragma / Trailer … … 2832 2830 ; URI defined but not used 2833 2831 ; URI-reference defined but not used 2834 ; fragment defined but not used2835 2832 ; http-URI defined but not used 2836 2833 ; https-URI defined but not used … … 3295 3292 <li class="indline1"><em>RFC2965</em> <a class="iref" href="#rfc.xref.RFC2965.1">3.2</a>, <a class="iref" href="#RFC2965"><b>12.2</b></a></li> 3296 3293 <li class="indline1"><em>RFC3864</em> <a class="iref" href="#rfc.xref.RFC3864.1">9.1</a>, <a class="iref" href="#RFC3864"><b>12.2</b></a></li> 3297 <li class="indline1"><em>RFC3986</em> <a class="iref" href="#rfc.xref.RFC3986.1">1</a>, <a class="iref" href="#rfc.xref.RFC3986.2">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.3">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.4">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.5">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.6">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.7">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.8">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.9">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.10">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.11">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.12">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.13">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.14">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.15">2.6 </a>, <a class="iref" href="#rfc.xref.RFC3986.16">2.6.1</a>, <a class="iref" href="#rfc.xref.RFC3986.17">2.6.3</a>, <a class="iref" href="#rfc.xref.RFC3986.18">2.6.3</a>, <a class="iref" href="#rfc.xref.RFC3986.19">4.1.2</a>, <a class="iref" href="#RFC3986"><b>12.1</b></a><ul class="ind">3298 <li class="indline1"><em>Section 2.1</em> <a class="iref" href="#rfc.xref.RFC3986.1 8">2.6.3</a>, <a class="iref" href="#rfc.xref.RFC3986.19">4.1.2</a></li>3294 <li class="indline1"><em>RFC3986</em> <a class="iref" href="#rfc.xref.RFC3986.1">1</a>, <a class="iref" href="#rfc.xref.RFC3986.2">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.3">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.4">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.5">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.6">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.7">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.8">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.9">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.10">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.11">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.12">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.13">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.14">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.15">2.6.1</a>, <a class="iref" href="#rfc.xref.RFC3986.16">2.6.3</a>, <a class="iref" href="#rfc.xref.RFC3986.17">2.6.3</a>, <a class="iref" href="#rfc.xref.RFC3986.18">4.1.2</a>, <a class="iref" href="#RFC3986"><b>12.1</b></a><ul class="ind"> 3295 <li class="indline1"><em>Section 2.1</em> <a class="iref" href="#rfc.xref.RFC3986.17">2.6.3</a>, <a class="iref" href="#rfc.xref.RFC3986.18">4.1.2</a></li> 3299 3296 <li class="indline1"><em>Section 3</em> <a class="iref" href="#rfc.xref.RFC3986.5">2.6</a></li> 3300 3297 <li class="indline1"><em>Section 3.2</em> <a class="iref" href="#rfc.xref.RFC3986.9">2.6</a></li> 3301 <li class="indline1"><em>Section 3.2.2</em> <a class="iref" href="#rfc.xref.RFC3986.15">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.16">2.6.1</a></li> 3302 <li class="indline1"><em>Section 3.2.3</em> <a class="iref" href="#rfc.xref.RFC3986.13">2.6</a></li> 3303 <li class="indline1"><em>Section 3.3</em> <a class="iref" href="#rfc.xref.RFC3986.11">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.12">2.6</a></li> 3304 <li class="indline1"><em>Section 3.4</em> <a class="iref" href="#rfc.xref.RFC3986.14">2.6</a></li> 3305 <li class="indline1"><em>Section 3.5</em> <a class="iref" href="#rfc.xref.RFC3986.10">2.6</a></li> 3298 <li class="indline1"><em>Section 3.2.2</em> <a class="iref" href="#rfc.xref.RFC3986.14">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.15">2.6.1</a></li> 3299 <li class="indline1"><em>Section 3.2.3</em> <a class="iref" href="#rfc.xref.RFC3986.12">2.6</a></li> 3300 <li class="indline1"><em>Section 3.3</em> <a class="iref" href="#rfc.xref.RFC3986.10">2.6</a>, <a class="iref" href="#rfc.xref.RFC3986.11">2.6</a></li> 3301 <li class="indline1"><em>Section 3.4</em> <a class="iref" href="#rfc.xref.RFC3986.13">2.6</a></li> 3306 3302 <li class="indline1"><em>Section 4.1</em> <a class="iref" href="#rfc.xref.RFC3986.6">2.6</a></li> 3307 3303 <li class="indline1"><em>Section 4.2</em> <a class="iref" href="#rfc.xref.RFC3986.8">2.6</a></li> 3308 3304 <li class="indline1"><em>Section 4.3</em> <a class="iref" href="#rfc.xref.RFC3986.7">2.6</a></li> 3309 <li class="indline1"><em>Section 6</em> <a class="iref" href="#rfc.xref.RFC3986.1 7">2.6.3</a></li>3305 <li class="indline1"><em>Section 6</em> <a class="iref" href="#rfc.xref.RFC3986.16">2.6.3</a></li> 3310 3306 </ul> 3311 3307 </li> -
draft-ietf-httpbis/latest/p1-messaging.xml
r648 r649 815 815 <x:anchor-alias value="relative-part"/> 816 816 <x:anchor-alias value="authority"/> 817 <x:anchor-alias value="fragment"/>818 817 <x:anchor-alias value="path-abempty"/> 819 818 <x:anchor-alias value="path-absolute"/> … … 824 823 <t> 825 824 This specification adopts the definitions of "URI-reference", 826 "absolute-URI", "relative-part", " fragment", "port", "host",825 "absolute-URI", "relative-part", "port", "host", 827 826 "path-abempty", "path-absolute", "query", and "authority" from 828 827 <xref target="RFC3986"/>. In addition, we define a partial-URI rule for … … 835 834 <x:ref>relative-part</x:ref> = <relative-part, defined in <xref target="RFC3986" x:fmt="," x:sec="4.2"/>> 836 835 <x:ref>authority</x:ref> = <authority, defined in <xref target="RFC3986" x:fmt="," x:sec="3.2"/>> 837 <x:ref>fragment</x:ref> = <fragment, defined in <xref target="RFC3986" x:fmt="," x:sec="3.5"/>>838 836 <x:ref>path-abempty</x:ref> = <path-abempty, defined in <xref target="RFC3986" x:fmt="," x:sec="3.3"/>> 839 837 <x:ref>path-absolute</x:ref> = <path-absolute, defined in <xref target="RFC3986" x:fmt="," x:sec="3.3"/>> … … 4502 4500 <x:ref>field-name</x:ref> = token 4503 4501 <x:ref>field-value</x:ref> = *( field-content / OWS ) 4504 <x:ref>fragment</x:ref> = <fragment, defined in [RFC3986], Section 3.5>4505 4502 4506 4503 <x:ref>general-header</x:ref> = Cache-Control / Connection / Date / Pragma / Trailer … … 4595 4592 ; URI defined but not used 4596 4593 ; URI-reference defined but not used 4597 ; fragment defined but not used4598 4594 ; http-URI defined but not used 4599 4595 ; https-URI defined but not used
Note: See TracChangeset
for help on using the changeset viewer.