Changeset 1849 for draft-ietf-httpbis
- Timestamp:
- 02/09/12 06:07:22 (8 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p2-semantics.html
r1848 r1849 473 473 <link rel="Chapter" title="1 Introduction" href="#rfc.section.1"> 474 474 <link rel="Chapter" title="2 Resource" href="#rfc.section.2"> 475 <link rel="Chapter" title="3 Re quest Methods" href="#rfc.section.3">476 <link rel="Chapter" title="4 Header Fields" href="#rfc.section.4">477 <link rel="Chapter" title="5 Response Status Codes" href="#rfc.section.5">478 <link rel="Chapter" title="6 Protocol Parameters" href="#rfc.section.6">479 <link rel="Chapter" title="7 P ayload" href="#rfc.section.7">480 <link rel="Chapter" title="8 Representation" href="#rfc.section.8">475 <link rel="Chapter" title="3 Representation" href="#rfc.section.3"> 476 <link rel="Chapter" title="4 Request Methods" href="#rfc.section.4"> 477 <link rel="Chapter" title="5 Header Fields" href="#rfc.section.5"> 478 <link rel="Chapter" title="6 Response Status Codes" href="#rfc.section.6"> 479 <link rel="Chapter" title="7 Protocol Parameters" href="#rfc.section.7"> 480 <link rel="Chapter" title="8 Payload" href="#rfc.section.8"> 481 481 <link rel="Chapter" title="9 Content Negotiation" href="#rfc.section.9"> 482 482 <link rel="Chapter" title="10 Header Field Definitions" href="#rfc.section.10"> … … 586 586 </li> 587 587 <li><a href="#rfc.section.2">2.</a> <a href="#resource">Resource</a></li> 588 <li><a href="#rfc.section.3">3.</a> <a href="#methods">Request Methods</a><ul> 589 <li><a href="#rfc.section.3.1">3.1</a> <a href="#method.overview">Overview</a></li> 590 <li><a href="#rfc.section.3.2">3.2</a> <a href="#method.properties">Common Method Properties</a><ul> 591 <li><a href="#rfc.section.3.2.1">3.2.1</a> <a href="#safe.methods">Safe Methods</a></li> 592 <li><a href="#rfc.section.3.2.2">3.2.2</a> <a href="#idempotent.methods">Idempotent Methods</a></li> 593 <li><a href="#rfc.section.3.2.3">3.2.3</a> <a href="#cacheable.methods">Cacheable Methods</a></li> 588 <li><a href="#rfc.section.3">3.</a> <a href="#representation">Representation</a><ul> 589 <li><a href="#rfc.section.3.1">3.1</a> <a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li> 590 <li><a href="#rfc.section.3.2">3.2</a> <a href="#representation.header.fields">Representation Header Fields</a></li> 591 <li><a href="#rfc.section.3.3">3.3</a> <a href="#representation.data">Representation Data</a></li> 592 </ul> 593 </li> 594 <li><a href="#rfc.section.4">4.</a> <a href="#methods">Request Methods</a><ul> 595 <li><a href="#rfc.section.4.1">4.1</a> <a href="#method.overview">Overview</a></li> 596 <li><a href="#rfc.section.4.2">4.2</a> <a href="#method.properties">Common Method Properties</a><ul> 597 <li><a href="#rfc.section.4.2.1">4.2.1</a> <a href="#safe.methods">Safe Methods</a></li> 598 <li><a href="#rfc.section.4.2.2">4.2.2</a> <a href="#idempotent.methods">Idempotent Methods</a></li> 599 <li><a href="#rfc.section.4.2.3">4.2.3</a> <a href="#cacheable.methods">Cacheable Methods</a></li> 594 600 </ul> 595 601 </li> 596 <li><a href="#rfc.section. 3.3">3.3</a> <a href="#method.definitions">Method Definitions</a><ul>597 <li><a href="#rfc.section. 3.3.1">3.3.1</a> <a href="#OPTIONS">OPTIONS</a></li>598 <li><a href="#rfc.section. 3.3.2">3.3.2</a> <a href="#GET">GET</a></li>599 <li><a href="#rfc.section. 3.3.3">3.3.3</a> <a href="#HEAD">HEAD</a></li>600 <li><a href="#rfc.section. 3.3.4">3.3.4</a> <a href="#POST">POST</a></li>601 <li><a href="#rfc.section. 3.3.5">3.3.5</a> <a href="#PUT">PUT</a></li>602 <li><a href="#rfc.section. 3.3.6">3.3.6</a> <a href="#DELETE">DELETE</a></li>603 <li><a href="#rfc.section. 3.3.7">3.3.7</a> <a href="#TRACE">TRACE</a></li>604 <li><a href="#rfc.section. 3.3.8">3.3.8</a> <a href="#CONNECT">CONNECT</a></li>602 <li><a href="#rfc.section.4.3">4.3</a> <a href="#method.definitions">Method Definitions</a><ul> 603 <li><a href="#rfc.section.4.3.1">4.3.1</a> <a href="#OPTIONS">OPTIONS</a></li> 604 <li><a href="#rfc.section.4.3.2">4.3.2</a> <a href="#GET">GET</a></li> 605 <li><a href="#rfc.section.4.3.3">4.3.3</a> <a href="#HEAD">HEAD</a></li> 606 <li><a href="#rfc.section.4.3.4">4.3.4</a> <a href="#POST">POST</a></li> 607 <li><a href="#rfc.section.4.3.5">4.3.5</a> <a href="#PUT">PUT</a></li> 608 <li><a href="#rfc.section.4.3.6">4.3.6</a> <a href="#DELETE">DELETE</a></li> 609 <li><a href="#rfc.section.4.3.7">4.3.7</a> <a href="#TRACE">TRACE</a></li> 610 <li><a href="#rfc.section.4.3.8">4.3.8</a> <a href="#CONNECT">CONNECT</a></li> 605 611 </ul> 606 612 </li> 607 613 </ul> 608 614 </li> 609 <li><a href="#rfc.section. 4">4.</a> <a href="#header.fields">Header Fields</a><ul>610 <li><a href="#rfc.section. 4.1">4.1</a> <a href="#request.fields">Request-modifier Header Fields</a></li>611 <li><a href="#rfc.section. 4.2">4.2</a> <a href="#response.fields">Status-modifier Header Fields</a></li>612 <li><a href="#rfc.section. 4.3">4.3</a> <a href="#resource.fields">Resource Metadata Fields</a></li>613 <li><a href="#rfc.section. 4.4">4.4</a> <a href="#payload.fields">Payload Metadata Fields</a></li>614 <li><a href="#rfc.section. 4.5">4.5</a> <a href="#request.header.fields">Request Header Fields</a></li>615 <li><a href="#rfc.section. 4.6">4.6</a> <a href="#response.header.fields">Response Header Fields</a></li>615 <li><a href="#rfc.section.5">5.</a> <a href="#header.fields">Header Fields</a><ul> 616 <li><a href="#rfc.section.5.1">5.1</a> <a href="#request.fields">Request-modifier Header Fields</a></li> 617 <li><a href="#rfc.section.5.2">5.2</a> <a href="#response.fields">Status-modifier Header Fields</a></li> 618 <li><a href="#rfc.section.5.3">5.3</a> <a href="#resource.fields">Resource Metadata Fields</a></li> 619 <li><a href="#rfc.section.5.4">5.4</a> <a href="#payload.fields">Payload Metadata Fields</a></li> 620 <li><a href="#rfc.section.5.5">5.5</a> <a href="#request.header.fields">Request Header Fields</a></li> 621 <li><a href="#rfc.section.5.6">5.6</a> <a href="#response.header.fields">Response Header Fields</a></li> 616 622 </ul> 617 623 </li> 618 <li><a href="#rfc.section. 5">5.</a> <a href="#status.codes">Response Status Codes</a><ul>619 <li><a href="#rfc.section. 5.1">5.1</a> <a href="#overview.of.status.codes">Overview of Status Codes</a></li>620 <li><a href="#rfc.section. 5.2">5.2</a> <a href="#status.1xx">Informational 1xx</a><ul>621 <li><a href="#rfc.section. 5.2.1">5.2.1</a> <a href="#status.100">100 Continue</a></li>622 <li><a href="#rfc.section. 5.2.2">5.2.2</a> <a href="#status.101">101 Switching Protocols</a></li>624 <li><a href="#rfc.section.6">6.</a> <a href="#status.codes">Response Status Codes</a><ul> 625 <li><a href="#rfc.section.6.1">6.1</a> <a href="#overview.of.status.codes">Overview of Status Codes</a></li> 626 <li><a href="#rfc.section.6.2">6.2</a> <a href="#status.1xx">Informational 1xx</a><ul> 627 <li><a href="#rfc.section.6.2.1">6.2.1</a> <a href="#status.100">100 Continue</a></li> 628 <li><a href="#rfc.section.6.2.2">6.2.2</a> <a href="#status.101">101 Switching Protocols</a></li> 623 629 </ul> 624 630 </li> 625 <li><a href="#rfc.section. 5.3">5.3</a> <a href="#status.2xx">Successful 2xx</a><ul>626 <li><a href="#rfc.section. 5.3.1">5.3.1</a> <a href="#status.200">200 OK</a></li>627 <li><a href="#rfc.section. 5.3.2">5.3.2</a> <a href="#status.201">201 Created</a></li>628 <li><a href="#rfc.section. 5.3.3">5.3.3</a> <a href="#status.202">202 Accepted</a></li>629 <li><a href="#rfc.section. 5.3.4">5.3.4</a> <a href="#status.203">203 Non-Authoritative Information</a></li>630 <li><a href="#rfc.section. 5.3.5">5.3.5</a> <a href="#status.204">204 No Content</a></li>631 <li><a href="#rfc.section. 5.3.6">5.3.6</a> <a href="#status.205">205 Reset Content</a></li>631 <li><a href="#rfc.section.6.3">6.3</a> <a href="#status.2xx">Successful 2xx</a><ul> 632 <li><a href="#rfc.section.6.3.1">6.3.1</a> <a href="#status.200">200 OK</a></li> 633 <li><a href="#rfc.section.6.3.2">6.3.2</a> <a href="#status.201">201 Created</a></li> 634 <li><a href="#rfc.section.6.3.3">6.3.3</a> <a href="#status.202">202 Accepted</a></li> 635 <li><a href="#rfc.section.6.3.4">6.3.4</a> <a href="#status.203">203 Non-Authoritative Information</a></li> 636 <li><a href="#rfc.section.6.3.5">6.3.5</a> <a href="#status.204">204 No Content</a></li> 637 <li><a href="#rfc.section.6.3.6">6.3.6</a> <a href="#status.205">205 Reset Content</a></li> 632 638 </ul> 633 639 </li> 634 <li><a href="#rfc.section. 5.4">5.4</a> <a href="#status.3xx">Redirection 3xx</a><ul>635 <li><a href="#rfc.section. 5.4.1">5.4.1</a> <a href="#status.300">300 Multiple Choices</a></li>636 <li><a href="#rfc.section. 5.4.2">5.4.2</a> <a href="#status.301">301 Moved Permanently</a></li>637 <li><a href="#rfc.section. 5.4.3">5.4.3</a> <a href="#status.302">302 Found</a></li>638 <li><a href="#rfc.section. 5.4.4">5.4.4</a> <a href="#status.303">303 See Other</a></li>639 <li><a href="#rfc.section. 5.4.5">5.4.5</a> <a href="#status.305">305 Use Proxy</a></li>640 <li><a href="#rfc.section. 5.4.6">5.4.6</a> <a href="#status.306">306 (Unused)</a></li>641 <li><a href="#rfc.section. 5.4.7">5.4.7</a> <a href="#status.307">307 Temporary Redirect</a></li>640 <li><a href="#rfc.section.6.4">6.4</a> <a href="#status.3xx">Redirection 3xx</a><ul> 641 <li><a href="#rfc.section.6.4.1">6.4.1</a> <a href="#status.300">300 Multiple Choices</a></li> 642 <li><a href="#rfc.section.6.4.2">6.4.2</a> <a href="#status.301">301 Moved Permanently</a></li> 643 <li><a href="#rfc.section.6.4.3">6.4.3</a> <a href="#status.302">302 Found</a></li> 644 <li><a href="#rfc.section.6.4.4">6.4.4</a> <a href="#status.303">303 See Other</a></li> 645 <li><a href="#rfc.section.6.4.5">6.4.5</a> <a href="#status.305">305 Use Proxy</a></li> 646 <li><a href="#rfc.section.6.4.6">6.4.6</a> <a href="#status.306">306 (Unused)</a></li> 647 <li><a href="#rfc.section.6.4.7">6.4.7</a> <a href="#status.307">307 Temporary Redirect</a></li> 642 648 </ul> 643 649 </li> 644 <li><a href="#rfc.section. 5.5">5.5</a> <a href="#status.4xx">Client Error 4xx</a><ul>645 <li><a href="#rfc.section. 5.5.1">5.5.1</a> <a href="#status.400">400 Bad Request</a></li>646 <li><a href="#rfc.section. 5.5.2">5.5.2</a> <a href="#status.402">402 Payment Required</a></li>647 <li><a href="#rfc.section. 5.5.3">5.5.3</a> <a href="#status.403">403 Forbidden</a></li>648 <li><a href="#rfc.section. 5.5.4">5.5.4</a> <a href="#status.404">404 Not Found</a></li>649 <li><a href="#rfc.section. 5.5.5">5.5.5</a> <a href="#status.405">405 Method Not Allowed</a></li>650 <li><a href="#rfc.section. 5.5.6">5.5.6</a> <a href="#status.406">406 Not Acceptable</a></li>651 <li><a href="#rfc.section. 5.5.7">5.5.7</a> <a href="#status.408">408 Request Timeout</a></li>652 <li><a href="#rfc.section. 5.5.8">5.5.8</a> <a href="#status.409">409 Conflict</a></li>653 <li><a href="#rfc.section. 5.5.9">5.5.9</a> <a href="#status.410">410 Gone</a></li>654 <li><a href="#rfc.section. 5.5.10">5.5.10</a> <a href="#status.411">411 Length Required</a></li>655 <li><a href="#rfc.section. 5.5.11">5.5.11</a> <a href="#status.413">413 Request Representation Too Large</a></li>656 <li><a href="#rfc.section. 5.5.12">5.5.12</a> <a href="#status.414">414 URI Too Long</a></li>657 <li><a href="#rfc.section. 5.5.13">5.5.13</a> <a href="#status.415">415 Unsupported Media Type</a></li>658 <li><a href="#rfc.section. 5.5.14">5.5.14</a> <a href="#status.417">417 Expectation Failed</a></li>659 <li><a href="#rfc.section. 5.5.15">5.5.15</a> <a href="#status.426">426 Upgrade Required</a></li>650 <li><a href="#rfc.section.6.5">6.5</a> <a href="#status.4xx">Client Error 4xx</a><ul> 651 <li><a href="#rfc.section.6.5.1">6.5.1</a> <a href="#status.400">400 Bad Request</a></li> 652 <li><a href="#rfc.section.6.5.2">6.5.2</a> <a href="#status.402">402 Payment Required</a></li> 653 <li><a href="#rfc.section.6.5.3">6.5.3</a> <a href="#status.403">403 Forbidden</a></li> 654 <li><a href="#rfc.section.6.5.4">6.5.4</a> <a href="#status.404">404 Not Found</a></li> 655 <li><a href="#rfc.section.6.5.5">6.5.5</a> <a href="#status.405">405 Method Not Allowed</a></li> 656 <li><a href="#rfc.section.6.5.6">6.5.6</a> <a href="#status.406">406 Not Acceptable</a></li> 657 <li><a href="#rfc.section.6.5.7">6.5.7</a> <a href="#status.408">408 Request Timeout</a></li> 658 <li><a href="#rfc.section.6.5.8">6.5.8</a> <a href="#status.409">409 Conflict</a></li> 659 <li><a href="#rfc.section.6.5.9">6.5.9</a> <a href="#status.410">410 Gone</a></li> 660 <li><a href="#rfc.section.6.5.10">6.5.10</a> <a href="#status.411">411 Length Required</a></li> 661 <li><a href="#rfc.section.6.5.11">6.5.11</a> <a href="#status.413">413 Request Representation Too Large</a></li> 662 <li><a href="#rfc.section.6.5.12">6.5.12</a> <a href="#status.414">414 URI Too Long</a></li> 663 <li><a href="#rfc.section.6.5.13">6.5.13</a> <a href="#status.415">415 Unsupported Media Type</a></li> 664 <li><a href="#rfc.section.6.5.14">6.5.14</a> <a href="#status.417">417 Expectation Failed</a></li> 665 <li><a href="#rfc.section.6.5.15">6.5.15</a> <a href="#status.426">426 Upgrade Required</a></li> 660 666 </ul> 661 667 </li> 662 <li><a href="#rfc.section. 5.6">5.6</a> <a href="#status.5xx">Server Error 5xx</a><ul>663 <li><a href="#rfc.section. 5.6.1">5.6.1</a> <a href="#status.500">500 Internal Server Error</a></li>664 <li><a href="#rfc.section. 5.6.2">5.6.2</a> <a href="#status.501">501 Not Implemented</a></li>665 <li><a href="#rfc.section. 5.6.3">5.6.3</a> <a href="#status.502">502 Bad Gateway</a></li>666 <li><a href="#rfc.section. 5.6.4">5.6.4</a> <a href="#status.503">503 Service Unavailable</a></li>667 <li><a href="#rfc.section. 5.6.5">5.6.5</a> <a href="#status.504">504 Gateway Timeout</a></li>668 <li><a href="#rfc.section. 5.6.6">5.6.6</a> <a href="#status.505">505 HTTP Version Not Supported</a></li>668 <li><a href="#rfc.section.6.6">6.6</a> <a href="#status.5xx">Server Error 5xx</a><ul> 669 <li><a href="#rfc.section.6.6.1">6.6.1</a> <a href="#status.500">500 Internal Server Error</a></li> 670 <li><a href="#rfc.section.6.6.2">6.6.2</a> <a href="#status.501">501 Not Implemented</a></li> 671 <li><a href="#rfc.section.6.6.3">6.6.3</a> <a href="#status.502">502 Bad Gateway</a></li> 672 <li><a href="#rfc.section.6.6.4">6.6.4</a> <a href="#status.503">503 Service Unavailable</a></li> 673 <li><a href="#rfc.section.6.6.5">6.6.5</a> <a href="#status.504">504 Gateway Timeout</a></li> 674 <li><a href="#rfc.section.6.6.6">6.6.6</a> <a href="#status.505">505 HTTP Version Not Supported</a></li> 669 675 </ul> 670 676 </li> 671 677 </ul> 672 678 </li> 673 <li><a href="#rfc.section. 6">6.</a> <a href="#protocol.parameters">Protocol Parameters</a><ul>674 <li><a href="#rfc.section. 6.1">6.1</a> <a href="#http.date">Date/Time Formats</a></li>675 <li><a href="#rfc.section. 6.2">6.2</a> <a href="#product.tokens">Product Tokens</a></li>676 <li><a href="#rfc.section. 6.3">6.3</a> <a href="#character.sets">Character Encodings (charset)</a></li>677 <li><a href="#rfc.section. 6.4">6.4</a> <a href="#content.codings">Content Codings</a></li>678 <li><a href="#rfc.section. 6.5">6.5</a> <a href="#media.types">Media Types</a><ul>679 <li><a href="#rfc.section. 6.5.1">6.5.1</a> <a href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></li>680 <li><a href="#rfc.section. 6.5.2">6.5.2</a> <a href="#multipart.types">Multipart Types</a></li>679 <li><a href="#rfc.section.7">7.</a> <a href="#protocol.parameters">Protocol Parameters</a><ul> 680 <li><a href="#rfc.section.7.1">7.1</a> <a href="#http.date">Date/Time Formats</a></li> 681 <li><a href="#rfc.section.7.2">7.2</a> <a href="#product.tokens">Product Tokens</a></li> 682 <li><a href="#rfc.section.7.3">7.3</a> <a href="#character.sets">Character Encodings (charset)</a></li> 683 <li><a href="#rfc.section.7.4">7.4</a> <a href="#content.codings">Content Codings</a></li> 684 <li><a href="#rfc.section.7.5">7.5</a> <a href="#media.types">Media Types</a><ul> 685 <li><a href="#rfc.section.7.5.1">7.5.1</a> <a href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></li> 686 <li><a href="#rfc.section.7.5.2">7.5.2</a> <a href="#multipart.types">Multipart Types</a></li> 681 687 </ul> 682 688 </li> 683 <li><a href="#rfc.section. 6.6">6.6</a> <a href="#language.tags">Language Tags</a></li>689 <li><a href="#rfc.section.7.6">7.6</a> <a href="#language.tags">Language Tags</a></li> 684 690 </ul> 685 691 </li> 686 <li><a href="#rfc.section.7">7.</a> <a href="#payload">Payload</a><ul> 687 <li><a href="#rfc.section.7.1">7.1</a> <a href="#payload.header.fields">Payload Header Fields</a></li> 688 <li><a href="#rfc.section.7.2">7.2</a> <a href="#payload.body">Payload Body</a></li> 689 </ul> 690 </li> 691 <li><a href="#rfc.section.8">8.</a> <a href="#representation">Representation</a><ul> 692 <li><a href="#rfc.section.8.1">8.1</a> <a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li> 693 <li><a href="#rfc.section.8.2">8.2</a> <a href="#representation.header.fields">Representation Header Fields</a></li> 694 <li><a href="#rfc.section.8.3">8.3</a> <a href="#representation.data">Representation Data</a></li> 692 <li><a href="#rfc.section.8">8.</a> <a href="#payload">Payload</a><ul> 693 <li><a href="#rfc.section.8.1">8.1</a> <a href="#payload.header.fields">Payload Header Fields</a></li> 694 <li><a href="#rfc.section.8.2">8.2</a> <a href="#payload.body">Payload Body</a></li> 695 695 </ul> 696 696 </li> … … 827 827 </p> 828 828 <p id="rfc.section.1.p.2">HTTP provides a uniform interface for interacting with resources regardless of their type, nature, or implementation. HTTP 829 semantics includes the intentions defined by each request method (<a href="#methods" title="Request Methods">Section 3</a>), extensions to those semantics that might be described in request header fields (<a href="#request.fields" title="Request-modifier Header Fields">Section 4.1</a>), the meaning of status codes to indicate a machine-readable response (<a href="#status.codes" title="Response Status Codes">Section 5</a>), and other control data and resource metadata that might be given in response header fields.829 semantics includes the intentions defined by each request method (<a href="#methods" title="Request Methods">Section 4</a>), extensions to those semantics that might be described in request header fields (<a href="#request.fields" title="Request-modifier Header Fields">Section 5.1</a>), the meaning of status codes to indicate a machine-readable response (<a href="#status.codes" title="Response Status Codes">Section 6</a>), and other control data and resource metadata that might be given in response header fields. 830 830 </p> 831 831 <p id="rfc.section.1.p.3"><span id="rfc.iref.c.1"></span> In addition, this document defines the payload of messages (a.k.a., content), the associated metadata header fields that define … … 850 850 </p> 851 851 <p id="rfc.section.2.p.3">One design goal of HTTP is to separate resource identification from request semantics, which is made possible by vesting the 852 request semantics in the request method (<a href="#methods" title="Request Methods">Section 3</a>) and a few request-modifying header fields (<a href="#request.fields" title="Request-modifier Header Fields">Section 4.1</a>). Resource owners <em class="bcp14">SHOULD NOT</em> include request semantics within a URI, such as by specifying an action to invoke within the path or query components of the852 request semantics in the request method (<a href="#methods" title="Request Methods">Section 4</a>) and a few request-modifying header fields (<a href="#request.fields" title="Request-modifier Header Fields">Section 5.1</a>). Resource owners <em class="bcp14">SHOULD NOT</em> include request semantics within a URI, such as by specifying an action to invoke within the path or query components of the 853 853 effective request URI, unless those semantics are disabled when they are inconsistent with the request method. 854 854 </p> 855 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="methods" href="#methods">Request Methods</a></h1> 856 <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a> <a id="method.overview" href="#method.overview">Overview</a></h2> 857 <p id="rfc.section.3.1.p.1">The request method token is the primary source of request semantics; it indicates the purpose for which the client has made 858 this request and what is expected by the client as a successful result. The request semantics <em class="bcp14">MAY</em> be further specialized by the semantics of some header fields when present in a request (<a href="#request.fields" title="Request-modifier Header Fields">Section 4.1</a>) if those additional semantics do not conflict with the method. 859 </p> 860 <div id="rfc.figure.u.1"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#method.overview" class="smpl">method</a> = <a href="#imported.abnf" class="smpl">token</a> 861 </pre><p id="rfc.section.3.1.p.3">HTTP was originally designed to be usable as an interface to distributed object systems. The request method was envisioned 855 <div id="rfc.iref.r.1"></div> 856 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="representation" href="#representation">Representation</a></h1> 857 <p id="rfc.section.3.p.1">A "<dfn>representation</dfn>" is information in a format that can be readily communicated from one party to another. A resource representation is information 858 that reflects the state of that resource, as observed at some point in the past (e.g., in a response to GET) or to be desired 859 at some point in the future (e.g., in a PUT request). 860 </p> 861 <p id="rfc.section.3.p.2">Most, but not all, representations transferred via HTTP are intended to be a representation of the target resource (the resource 862 identified by the effective request URI). The precise semantics of a representation are determined by the type of message 863 (request or response), the request method, the response status code, and the representation metadata. For example, the above 864 semantic is true for the representation in any <a href="#status.200" class="smpl">200 (OK)</a> response to GET and for the representation in any PUT request. A 200 response to PUT, in contrast, contains either a representation 865 that describes the successful action or a representation of the target resource, with the latter indicated by a <a href="#header.content-location" class="smpl">Content-Location</a> header field with the same value as the effective request URI. Likewise, response messages with an error status code usually 866 contain a representation that describes the error and what next steps are suggested for resolving it. 867 </p> 868 <p id="rfc.section.3.p.3">Request and Response messages <em class="bcp14">MAY</em> transfer a representation if not otherwise restricted by the request method or response status code. A representation consists 869 of metadata (representation header fields) and data (representation body). When a complete or partial representation is enclosed 870 in an HTTP message, it is referred to as the payload of the message. 871 </p> 872 <p id="rfc.section.3.p.4">A representation body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. The representation body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message. 873 </p> 874 <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a> <a id="identifying.response.associated.with.representation" href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></h2> 875 <p id="rfc.section.3.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p> 876 <p id="rfc.section.3.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p> 877 <p id="rfc.section.3.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.8"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following 878 rules are used (with the first applicable one being selected): 879 </p> 880 <ol> 881 <li>If the response status code is <a href="#status.200" class="smpl">200 (OK)</a> or <a href="#status.203" class="smpl">203 882 (Non-Authoritative Information)</a> and the request method was GET, the response payload is a representation of the target resource. 883 </li> 884 <li>If the response status code is <a href="#status.204" class="smpl">204 (No Content)</a>, <a href="p5-range.html#status.206" class="smpl">206 (Partial Content)</a>, or <a href="p4-conditional.html#status.304" class="smpl">304 (Not Modified)</a> and the request method was GET or HEAD, the response payload is a partial representation of the target resource. 885 </li> 886 <li>If the response has a <a href="#header.content-location" class="smpl">Content-Location</a> header field, and that URI is the same as the effective request URI, the response payload is a representation of the target 887 resource. 888 </li> 889 <li>If the response has a <a href="#header.content-location" class="smpl">Content-Location</a> header field, and that URI is not the same as the effective request URI, then the response asserts that its payload is a representation 890 of the resource identified by the Content-Location URI. However, such an assertion cannot be trusted unless it can be verified 891 by other means (not defined by HTTP). 892 </li> 893 <li>Otherwise, the response is a representation of an anonymous (i.e., unidentified) resource.</li> 894 </ol> 895 <p id="rfc.section.3.1.p.5"> <span class="comment" id="TODO-req-uri">[<a href="#TODO-req-uri" class="smpl">TODO-req-uri</a>: The comparison function is going to have to be defined somewhere, because we already need to compare URIs for things like 896 cache invalidation.]</span> 897 </p> 898 <h2 id="rfc.section.3.2"><a href="#rfc.section.3.2">3.2</a> <a id="representation.header.fields" href="#representation.header.fields">Representation Header Fields</a></h2> 899 <p id="rfc.section.3.2.p.1">Representation header fields define metadata about the representation data enclosed in the message body or, if no message 900 body is present, about the representation that would have been transferred in a <a href="#status.200" class="smpl">200 (OK)</a> response to a simultaneous GET request with the same effective request URI. 901 </p> 902 <p id="rfc.section.3.2.p.2">The following header fields are defined as representation metadata:</p> 903 <div id="rfc.table.u.1"> 904 <table class="tt full left" cellpadding="3" cellspacing="0"> 905 <thead> 906 <tr> 907 <th>Header Field Name</th> 908 <th>Defined in...</th> 909 </tr> 910 </thead> 911 <tbody> 912 <tr> 913 <td class="left">Content-Encoding</td> 914 <td class="left"><a href="#header.content-encoding" id="rfc.xref.header.content-encoding.1" title="Content-Encoding">Section 10.6</a></td> 915 </tr> 916 <tr> 917 <td class="left">Content-Language</td> 918 <td class="left"><a href="#header.content-language" id="rfc.xref.header.content-language.1" title="Content-Language">Section 10.7</a></td> 919 </tr> 920 <tr> 921 <td class="left">Content-Location</td> 922 <td class="left"><a href="#header.content-location" id="rfc.xref.header.content-location.1" title="Content-Location">Section 10.8</a></td> 923 </tr> 924 <tr> 925 <td class="left">Content-Type</td> 926 <td class="left"><a href="#header.content-type" id="rfc.xref.header.content-type.1" title="Content-Type">Section 10.9</a></td> 927 </tr> 928 <tr> 929 <td class="left">Expires</td> 930 <td class="left"><a href="p6-cache.html#header.expires" title="Expires">Section 7.3</a> of <a href="#Part6" id="rfc.xref.Part6.1"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 931 </tr> 932 </tbody> 933 </table> 934 </div> 935 <p id="rfc.section.3.2.p.3"><span id="rfc.iref.s.1"></span> We use the term "<dfn>selected representation</dfn>" to refer to the the current representation of a target resource that would have been selected in a successful response if 936 the same request had used the method GET and excluded any conditional request header fields. 937 </p> 938 <p id="rfc.section.3.2.p.4">Additional header fields define metadata about the selected representation, which might differ from the representation included 939 in the message for responses to some state-changing methods. The following header fields are defined as selected representation 940 metadata: 941 </p> 942 <div id="rfc.table.u.2"> 943 <table class="tt full left" cellpadding="3" cellspacing="0"> 944 <thead> 945 <tr> 946 <th>Header Field Name</th> 947 <th>Defined in...</th> 948 </tr> 949 </thead> 950 <tbody> 951 <tr> 952 <td class="left">ETag</td> 953 <td class="left"><a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.1"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 954 </tr> 955 <tr> 956 <td class="left">Last-Modified</td> 957 <td class="left"><a href="p4-conditional.html#header.last-modified" title="Last-Modified">Section 2.2</a> of <a href="#Part4" id="rfc.xref.Part4.2"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 958 </tr> 959 </tbody> 960 </table> 961 </div> 962 <h2 id="rfc.section.3.3"><a href="#rfc.section.3.3">3.3</a> <a id="representation.data" href="#representation.data">Representation Data</a></h2> 963 <p id="rfc.section.3.3.p.1">The representation body associated with an HTTP message is either provided as the payload body of the message or referred 964 to by the message semantics and the effective request URI. The representation data is in a format and encoding defined by 965 the representation metadata header fields. 966 </p> 967 <p id="rfc.section.3.3.p.2">The data type of the representation data is determined via the header fields <a href="#header.content-type" class="smpl">Content-Type</a> and <a href="#header.content-encoding" class="smpl">Content-Encoding</a>. These define a two-layer, ordered encoding model: 968 </p> 969 <div id="rfc.figure.u.1"></div><pre class="text"> representation-data := Content-Encoding( Content-Type( bits ) ) 970 </pre><p id="rfc.section.3.3.p.4"> <a href="#header.content-type" class="smpl">Content-Type</a> specifies the media type of the underlying data, which defines both the data format and how that data <em class="bcp14">SHOULD</em> be processed by the recipient (within the scope of the request method semantics). Any HTTP/1.1 message containing a payload 971 body <em class="bcp14">SHOULD</em> include a Content-Type header field defining the media type of the associated representation unless that metadata is unknown 972 to the sender. If the Content-Type header field is not present, it indicates that the sender does not know the media type 973 of the representation; recipients <em class="bcp14">MAY</em> either assume that the media type is "application/octet-stream" (<a href="#RFC2046" id="rfc.xref.RFC2046.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a>, <a href="http://tools.ietf.org/html/rfc2046#section-4.5.1">Section 4.5.1</a>) or examine the content to determine its type. 974 </p> 975 <p id="rfc.section.3.3.p.5">In practice, resource owners do not always properly configure their origin server to provide the correct Content-Type for 976 a given representation, with the result that some clients will examine a response body's content and override the specified 977 type. Clients that do so risk drawing incorrect conclusions, which might expose additional security risks (e.g., "privilege 978 escalation"). Furthermore, it is impossible to determine the sender's intent by examining the data format: many data formats 979 match multiple media types that differ only in processing semantics. Implementers are encouraged to provide a means of disabling 980 such "content sniffing" when it is used. 981 </p> 982 <p id="rfc.section.3.3.p.6"> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> is used to indicate any additional content codings applied to the data, usually for the purpose of data compression, that 983 are a property of the representation. If Content-Encoding is not present, then there is no additional encoding beyond that 984 defined by the <a href="#header.content-type" class="smpl">Content-Type</a> header field. 985 </p> 986 <h1 id="rfc.section.4"><a href="#rfc.section.4">4.</a> <a id="methods" href="#methods">Request Methods</a></h1> 987 <h2 id="rfc.section.4.1"><a href="#rfc.section.4.1">4.1</a> <a id="method.overview" href="#method.overview">Overview</a></h2> 988 <p id="rfc.section.4.1.p.1">The request method token is the primary source of request semantics; it indicates the purpose for which the client has made 989 this request and what is expected by the client as a successful result. The request semantics <em class="bcp14">MAY</em> be further specialized by the semantics of some header fields when present in a request (<a href="#request.fields" title="Request-modifier Header Fields">Section 5.1</a>) if those additional semantics do not conflict with the method. 990 </p> 991 <div id="rfc.figure.u.2"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#method.overview" class="smpl">method</a> = <a href="#imported.abnf" class="smpl">token</a> 992 </pre><p id="rfc.section.4.1.p.3">HTTP was originally designed to be usable as an interface to distributed object systems. The request method was envisioned 862 993 as applying semantics to a target resource in much the same way as invoking a defined method on an identified object would 863 994 apply semantics. The method token is case-sensitive because it might be used as a gateway to object-based systems with case-sensitive 864 995 method names. 865 996 </p> 866 <p id="rfc.section. 3.1.p.4">Unlike distributed objects, the standardized request methods in HTTP are not resource-specific, since uniform interfaces provide997 <p id="rfc.section.4.1.p.4">Unlike distributed objects, the standardized request methods in HTTP are not resource-specific, since uniform interfaces provide 867 998 for better visibility and reuse in network-based systems <a href="#REST" id="rfc.xref.REST.1"><cite title="Architectural Styles and the Design of Network-based Software Architectures">[REST]</cite></a>. Once defined, a standardized method <em class="bcp14">MUST</em> have the same semantics when applied to any resource, though each resource determines for itself whether those semantics are 868 999 implemented or allowed. 869 1000 </p> 870 <p id="rfc.section. 3.1.p.5">This specification defines a number of standardized methods that are commonly used in HTTP, as outlined by the following table.1001 <p id="rfc.section.4.1.p.5">This specification defines a number of standardized methods that are commonly used in HTTP, as outlined by the following table. 871 1002 By convention, standardized methods are defined in all-uppercase ASCII letters. 872 1003 </p> … … 885 1016 <td class="left">GET</td> 886 1017 <td class="left">Transfer a current representation of the target resource.</td> 887 <td class="left"><a href="#GET" id="rfc.xref.GET.1" title="GET"> 3.3.2</a></td>1018 <td class="left"><a href="#GET" id="rfc.xref.GET.1" title="GET">4.3.2</a></td> 888 1019 </tr> 889 1020 <tr> 890 1021 <td class="left">HEAD</td> 891 1022 <td class="left">Same as GET, but do not include a message body in the response.</td> 892 <td class="left"><a href="#HEAD" id="rfc.xref.HEAD.1" title="HEAD"> 3.3.3</a></td>1023 <td class="left"><a href="#HEAD" id="rfc.xref.HEAD.1" title="HEAD">4.3.3</a></td> 893 1024 </tr> 894 1025 <tr> 895 1026 <td class="left">POST</td> 896 1027 <td class="left">Perform resource-specific processing on the request payload.</td> 897 <td class="left"><a href="#POST" id="rfc.xref.POST.1" title="POST"> 3.3.4</a></td>1028 <td class="left"><a href="#POST" id="rfc.xref.POST.1" title="POST">4.3.4</a></td> 898 1029 </tr> 899 1030 <tr> 900 1031 <td class="left">PUT</td> 901 1032 <td class="left">Replace all current representations of the target resource with the request payload.</td> 902 <td class="left"><a href="#PUT" id="rfc.xref.PUT.1" title="PUT"> 3.3.5</a></td>1033 <td class="left"><a href="#PUT" id="rfc.xref.PUT.1" title="PUT">4.3.5</a></td> 903 1034 </tr> 904 1035 <tr> 905 1036 <td class="left">DELETE</td> 906 1037 <td class="left">Remove all current representations of the target resource.</td> 907 <td class="left"><a href="#DELETE" id="rfc.xref.DELETE.1" title="DELETE"> 3.3.6</a></td>1038 <td class="left"><a href="#DELETE" id="rfc.xref.DELETE.1" title="DELETE">4.3.6</a></td> 908 1039 </tr> 909 1040 <tr> 910 1041 <td class="left">CONNECT</td> 911 1042 <td class="left">Establish a tunnel to the server identified by the target resource.</td> 912 <td class="left"><a href="#CONNECT" id="rfc.xref.CONNECT.1" title="CONNECT"> 3.3.8</a></td>1043 <td class="left"><a href="#CONNECT" id="rfc.xref.CONNECT.1" title="CONNECT">4.3.8</a></td> 913 1044 </tr> 914 1045 <tr> 915 1046 <td class="left">OPTIONS</td> 916 1047 <td class="left">Describe the communication options for the target resource.</td> 917 <td class="left"><a href="#OPTIONS" id="rfc.xref.OPTIONS.1" title="OPTIONS"> 3.3.1</a></td>1048 <td class="left"><a href="#OPTIONS" id="rfc.xref.OPTIONS.1" title="OPTIONS">4.3.1</a></td> 918 1049 </tr> 919 1050 <tr> 920 1051 <td class="left">TRACE</td> 921 1052 <td class="left">Perform a message loop-back test along the path to the target resource.</td> 922 <td class="left"><a href="#TRACE" id="rfc.xref.TRACE.1" title="TRACE"> 3.3.7</a></td>1053 <td class="left"><a href="#TRACE" id="rfc.xref.TRACE.1" title="TRACE">4.3.7</a></td> 923 1054 </tr> 924 1055 </tbody> 925 1056 </table> 926 1057 </div> 927 <p id="rfc.section. 3.1.p.6">The methods GET and HEAD <em class="bcp14">MUST</em> be supported by all general-purpose servers. All other methods are <em class="bcp14">OPTIONAL</em>. When implemented, a server <em class="bcp14">MUST</em> implement the above methods according to the semantics defined for them in <a href="#method.definitions" title="Method Definitions">Section 3.3</a>.928 </p> 929 <p id="rfc.section. 3.1.p.7">Additional methods <em class="bcp14">MAY</em> be used in HTTP; many have already been standardized outside the scope of this specification and registered within the HTTP1058 <p id="rfc.section.4.1.p.6">The methods GET and HEAD <em class="bcp14">MUST</em> be supported by all general-purpose servers. All other methods are <em class="bcp14">OPTIONAL</em>. When implemented, a server <em class="bcp14">MUST</em> implement the above methods according to the semantics defined for them in <a href="#method.definitions" title="Method Definitions">Section 4.3</a>. 1059 </p> 1060 <p id="rfc.section.4.1.p.7">Additional methods <em class="bcp14">MAY</em> be used in HTTP; many have already been standardized outside the scope of this specification and registered within the HTTP 930 1061 Method Registry maintained by IANA, as defined in <a href="#method.registry" title="Method Registry">Section 11.1</a>. 931 1062 </p> 932 <p id="rfc.section. 3.1.p.8">The set of methods allowed by a target resource can be listed in an <a href="#header.allow" class="smpl">Allow</a> header field (<a href="#header.allow" id="rfc.xref.header.allow.1" title="Allow">Section 10.5</a>). However, the set of allowed methods can change dynamically. When a request message is received that is unrecognized or1063 <p id="rfc.section.4.1.p.8">The set of methods allowed by a target resource can be listed in an <a href="#header.allow" class="smpl">Allow</a> header field (<a href="#header.allow" id="rfc.xref.header.allow.1" title="Allow">Section 10.5</a>). However, the set of allowed methods can change dynamically. When a request message is received that is unrecognized or 933 1064 not implemented by an origin server, the origin server <em class="bcp14">SHOULD</em> respond with the <a href="#status.501" class="smpl">501 (Not Implemented)</a> status code. When a request message is received that is known by an origin server but not allowed for the target resource, 934 1065 the origin server <em class="bcp14">SHOULD</em> respond with the <a href="#status.405" class="smpl">405 (Method Not Allowed)</a> status code. 935 1066 </p> 936 <h2 id="rfc.section. 3.2"><a href="#rfc.section.3.2">3.2</a> <a id="method.properties" href="#method.properties">Common Method Properties</a></h2>937 <div id="rfc.iref.s. 1"></div>938 <h3 id="rfc.section. 3.2.1"><a href="#rfc.section.3.2.1">3.2.1</a> <a id="safe.methods" href="#safe.methods">Safe Methods</a></h3>939 <p id="rfc.section. 3.2.1.p.1">Request methods are considered "<dfn id="safe">safe</dfn>" if their defined semantics are essentially read-only; i.e., the client does not request, and does not expect, any state1067 <h2 id="rfc.section.4.2"><a href="#rfc.section.4.2">4.2</a> <a id="method.properties" href="#method.properties">Common Method Properties</a></h2> 1068 <div id="rfc.iref.s.2"></div> 1069 <h3 id="rfc.section.4.2.1"><a href="#rfc.section.4.2.1">4.2.1</a> <a id="safe.methods" href="#safe.methods">Safe Methods</a></h3> 1070 <p id="rfc.section.4.2.1.p.1">Request methods are considered "<dfn id="safe">safe</dfn>" if their defined semantics are essentially read-only; i.e., the client does not request, and does not expect, any state 940 1071 change on the origin server as a result of applying a safe method to a target resource. Likewise, reasonable use of a safe 941 1072 method is not expected to cause any harm, loss of property, or unusual burden on the origin server. 942 1073 </p> 943 <p id="rfc.section. 3.2.1.p.2">This definition of safe methods does not prevent an implementation from including behavior that is potentially harmful, not1074 <p id="rfc.section.4.2.1.p.2">This definition of safe methods does not prevent an implementation from including behavior that is potentially harmful, not 944 1075 entirely read-only, or which causes side-effects while invoking a safe method. What is important, however, is that the client 945 1076 did not request that additional behavior and cannot be held accountable for it. For example, most servers append request information … … 948 1079 the Web will often have the side-effect of charging an advertising account. 949 1080 </p> 950 <p id="rfc.section. 3.2.1.p.3">The GET, HEAD, OPTIONS, and TRACE request methods are defined to be safe.</p>951 <p id="rfc.section. 3.2.1.p.4">The purpose of distinguishing between safe and unsafe methods is to allow automated retrieval processes (spiders) and cache1081 <p id="rfc.section.4.2.1.p.3">The GET, HEAD, OPTIONS, and TRACE request methods are defined to be safe.</p> 1082 <p id="rfc.section.4.2.1.p.4">The purpose of distinguishing between safe and unsafe methods is to allow automated retrieval processes (spiders) and cache 952 1083 performance optimization (pre-fetching) to work without fear of causing harm. In addition, it allows a user agent to apply 953 1084 appropriate constraints on the automated use of unsafe methods when processing potentially untrusted content. 954 1085 </p> 955 <p id="rfc.section. 3.2.1.p.5">A user agent <em class="bcp14">SHOULD</em> distinguish between safe and unsafe methods when presenting potential actions to a user, such that the user can be made aware1086 <p id="rfc.section.4.2.1.p.5">A user agent <em class="bcp14">SHOULD</em> distinguish between safe and unsafe methods when presenting potential actions to a user, such that the user can be made aware 956 1087 of an unsafe action before it is requested. 957 1088 </p> 958 <p id="rfc.section. 3.2.1.p.6">When a resource is constructed such that parameters within the effective request URI have the effect of selecting an action,1089 <p id="rfc.section.4.2.1.p.6">When a resource is constructed such that parameters within the effective request URI have the effect of selecting an action, 959 1090 it is the resource owner's responsibility to ensure that the action is consistent with the request method semantics. For example, 960 1091 it is common for Web-based content editing software to use actions within query parameters, such as "page?do=delete". If the … … 964 1095 </p> 965 1096 <div id="rfc.iref.i.1"></div> 966 <h3 id="rfc.section. 3.2.2"><a href="#rfc.section.3.2.2">3.2.2</a> <a id="idempotent.methods" href="#idempotent.methods">Idempotent Methods</a></h3>967 <p id="rfc.section. 3.2.2.p.1">Request methods are considered "<dfn id="idempotent">idempotent</dfn>" if the intended effect of multiple identical requests is the same as for a single request. PUT, DELETE, and all safe request1097 <h3 id="rfc.section.4.2.2"><a href="#rfc.section.4.2.2">4.2.2</a> <a id="idempotent.methods" href="#idempotent.methods">Idempotent Methods</a></h3> 1098 <p id="rfc.section.4.2.2.p.1">Request methods are considered "<dfn id="idempotent">idempotent</dfn>" if the intended effect of multiple identical requests is the same as for a single request. PUT, DELETE, and all safe request 968 1099 methods are idempotent. 969 1100 </p> 970 <p id="rfc.section. 3.2.2.p.2">Like the definition of safe, the idempotent property only applies to what has been requested by the user; a server is free1101 <p id="rfc.section.4.2.2.p.2">Like the definition of safe, the idempotent property only applies to what has been requested by the user; a server is free 971 1102 to log each request separately, retain a revision control history, or implement other non-idempotent side-effects for each 972 1103 idempotent request. 973 1104 </p> 974 <p id="rfc.section. 3.2.2.p.3">Idempotent methods are distinguished because the request can be repeated automatically if a communication failure occurs before1105 <p id="rfc.section.4.2.2.p.3">Idempotent methods are distinguished because the request can be repeated automatically if a communication failure occurs before 975 1106 the client is able to read the server's response. For example, if a client sends a PUT request and the underlying connection 976 1107 is closed before any response is received, then it can establish a new connection and retry the idempotent request because … … 979 1110 </p> 980 1111 <div id="rfc.iref.c.2"></div> 981 <h3 id="rfc.section. 3.2.3"><a href="#rfc.section.3.2.3">3.2.3</a> <a id="cacheable.methods" href="#cacheable.methods">Cacheable Methods</a></h3>982 <p id="rfc.section. 3.2.3.p.1">Request methods are considered "<dfn id="cacheable">cacheable</dfn>" if it is possible and useful to answer a current client request with a stored response from a prior request. GET and HEAD1112 <h3 id="rfc.section.4.2.3"><a href="#rfc.section.4.2.3">4.2.3</a> <a id="cacheable.methods" href="#cacheable.methods">Cacheable Methods</a></h3> 1113 <p id="rfc.section.4.2.3.p.1">Request methods are considered "<dfn id="cacheable">cacheable</dfn>" if it is possible and useful to answer a current client request with a stored response from a prior request. GET and HEAD 983 1114 are defined to be cacheable. In general, safe methods that do not depend on a current or authoritative response are cacheable, 984 1115 though the overwhelming majority of caches only support GET and HEAD. HTTP requirements for cache behavior and cacheable responses 985 are defined in <a href="#Part6" id="rfc.xref.Part6. 1"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>.986 </p> 987 <h2 id="rfc.section. 3.3"><a href="#rfc.section.3.3">3.3</a> <a id="method.definitions" href="#method.definitions">Method Definitions</a></h2>988 <h3 id="rfc.section. 3.3.1"><a href="#rfc.section.3.3.1">3.3.1</a> <a id="OPTIONS" href="#OPTIONS">OPTIONS</a></h3>1116 are defined in <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>. 1117 </p> 1118 <h2 id="rfc.section.4.3"><a href="#rfc.section.4.3">4.3</a> <a id="method.definitions" href="#method.definitions">Method Definitions</a></h2> 1119 <h3 id="rfc.section.4.3.1"><a href="#rfc.section.4.3.1">4.3.1</a> <a id="OPTIONS" href="#OPTIONS">OPTIONS</a></h3> 989 1120 <div id="rfc.iref.o.1"></div> 990 1121 <div id="rfc.iref.m.1"></div> 991 <p id="rfc.section. 3.3.1.p.1">The OPTIONS method requests information about the communication options available on the request/response chain identified1122 <p id="rfc.section.4.3.1.p.1">The OPTIONS method requests information about the communication options available on the request/response chain identified 992 1123 by the effective request URI. This method allows a client to determine the options and/or requirements associated with a resource, 993 1124 or the capabilities of a server, without implying a resource action or initiating a resource retrieval. 994 1125 </p> 995 <p id="rfc.section. 3.3.1.p.2">Responses to the OPTIONS method are not cacheable.</p>996 <p id="rfc.section. 3.3.1.p.3">If the OPTIONS request includes a message body (as indicated by the presence of <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a> or <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a>), then the media type <em class="bcp14">MUST</em> be indicated by a <a href="#header.content-type" class="smpl">Content-Type</a> field. Although this specification does not define any use for such a body, future extensions to HTTP might use the OPTIONS1126 <p id="rfc.section.4.3.1.p.2">Responses to the OPTIONS method are not cacheable.</p> 1127 <p id="rfc.section.4.3.1.p.3">If the OPTIONS request includes a message body (as indicated by the presence of <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a> or <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a>), then the media type <em class="bcp14">MUST</em> be indicated by a <a href="#header.content-type" class="smpl">Content-Type</a> field. Although this specification does not define any use for such a body, future extensions to HTTP might use the OPTIONS 997 1128 body to make more detailed queries on the server. 998 1129 </p> 999 <p id="rfc.section. 3.3.1.p.4">If the request-target (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than to a specific resource.1130 <p id="rfc.section.4.3.1.p.4">If the request-target (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.9"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than to a specific resource. 1000 1131 Since a server's communication options typically depend on the resource, the "*" request is only useful as a "ping" or "no-op" 1001 1132 type of method; it does nothing beyond allowing the client to test the capabilities of the server. For example, this can be 1002 1133 used to test a proxy for HTTP/1.1 conformance (or lack thereof). 1003 1134 </p> 1004 <p id="rfc.section. 3.3.1.p.5">If the request-target is not an asterisk, the OPTIONS request applies only to the options that are available when communicating1135 <p id="rfc.section.4.3.1.p.5">If the request-target is not an asterisk, the OPTIONS request applies only to the options that are available when communicating 1005 1136 with that resource. 1006 1137 </p> 1007 <p id="rfc.section. 3.3.1.p.6">A <a href="#status.200" class="smpl">200 (OK)</a> response <em class="bcp14">SHOULD</em> include any header fields that indicate optional features implemented by the server and applicable to that resource (e.g., <a href="#header.allow" class="smpl">Allow</a>), possibly including extensions not defined by this specification. The response body, if any, <em class="bcp14">SHOULD</em> also include information about the communication options. The format for such a body is not defined by this specification,1138 <p id="rfc.section.4.3.1.p.6">A <a href="#status.200" class="smpl">200 (OK)</a> response <em class="bcp14">SHOULD</em> include any header fields that indicate optional features implemented by the server and applicable to that resource (e.g., <a href="#header.allow" class="smpl">Allow</a>), possibly including extensions not defined by this specification. The response body, if any, <em class="bcp14">SHOULD</em> also include information about the communication options. The format for such a body is not defined by this specification, 1008 1139 but might be defined by future extensions to HTTP. Content negotiation <em class="bcp14">MAY</em> be used to select the appropriate response format. If no response body is included, the response <em class="bcp14">MUST</em> include a <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a> field with a field-value of "0". 1009 1140 </p> 1010 <p id="rfc.section. 3.3.1.p.7">The <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field <em class="bcp14">MAY</em> be used to target a specific proxy in the request chain (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 10.14</a>). If no Max-Forwards field is present in the request, then the forwarded request <em class="bcp14">MUST NOT</em> include a Max-Forwards field.1011 </p> 1012 <h3 id="rfc.section. 3.3.2"><a href="#rfc.section.3.3.2">3.3.2</a> <a id="GET" href="#GET">GET</a></h3>1141 <p id="rfc.section.4.3.1.p.7">The <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field <em class="bcp14">MAY</em> be used to target a specific proxy in the request chain (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 10.14</a>). If no Max-Forwards field is present in the request, then the forwarded request <em class="bcp14">MUST NOT</em> include a Max-Forwards field. 1142 </p> 1143 <h3 id="rfc.section.4.3.2"><a href="#rfc.section.4.3.2">4.3.2</a> <a id="GET" href="#GET">GET</a></h3> 1013 1144 <div id="rfc.iref.g.2"></div> 1014 1145 <div id="rfc.iref.m.2"></div> 1015 <p id="rfc.section. 3.3.2.p.1">The GET method requests transfer of a current representation of the target resource.</p>1016 <p id="rfc.section. 3.3.2.p.2">If the target resource is a data-producing process, it is the produced data which shall be returned as the representation1146 <p id="rfc.section.4.3.2.p.1">The GET method requests transfer of a current representation of the target resource.</p> 1147 <p id="rfc.section.4.3.2.p.2">If the target resource is a data-producing process, it is the produced data which shall be returned as the representation 1017 1148 in the response and not the source text of the process, unless that text happens to be the output of the process. 1018 1149 </p> 1019 <p id="rfc.section. 3.3.2.p.3">The semantics of the GET method change to a "conditional GET" if the request message includes an <a href="p4-conditional.html#header.if-modified-since" class="smpl">If-Modified-Since</a>, <a href="p4-conditional.html#header.if-unmodified-since" class="smpl">If-Unmodified-Since</a>, <a href="p4-conditional.html#header.if-match" class="smpl">If-Match</a>, <a href="p4-conditional.html#header.if-none-match" class="smpl">If-None-Match</a>, or <a href="p5-range.html#header.if-range" class="smpl">If-Range</a> header field (<a href="#Part4" id="rfc.xref.Part4.1"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). A conditional GET requests that the representation be transferred only under the circumstances described by the conditional1150 <p id="rfc.section.4.3.2.p.3">The semantics of the GET method change to a "conditional GET" if the request message includes an <a href="p4-conditional.html#header.if-modified-since" class="smpl">If-Modified-Since</a>, <a href="p4-conditional.html#header.if-unmodified-since" class="smpl">If-Unmodified-Since</a>, <a href="p4-conditional.html#header.if-match" class="smpl">If-Match</a>, <a href="p4-conditional.html#header.if-none-match" class="smpl">If-None-Match</a>, or <a href="p5-range.html#header.if-range" class="smpl">If-Range</a> header field (<a href="#Part4" id="rfc.xref.Part4.3"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). A conditional GET requests that the representation be transferred only under the circumstances described by the conditional 1020 1151 header field(s). The conditional GET request is intended to reduce unnecessary network usage by allowing cached representations 1021 1152 to be refreshed without requiring multiple requests or transferring data already held by the client. 1022 1153 </p> 1023 <p id="rfc.section. 3.3.2.p.4">The semantics of the GET method change to a "partial GET" if the request message includes a <a href="p5-range.html#range.retrieval.requests" class="smpl">Range</a> header field (<a href="#Part5" id="rfc.xref.Part5.1"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>). A partial GET requests that only part of the representation be transferred, as described in <a href="p5-range.html#header.range" title="Range">Section 5.4</a> of <a href="#Part5" id="rfc.xref.Part5.2"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>. The partial GET request is intended to reduce unnecessary network usage by allowing partially-retrieved representations1154 <p id="rfc.section.4.3.2.p.4">The semantics of the GET method change to a "partial GET" if the request message includes a <a href="p5-range.html#range.retrieval.requests" class="smpl">Range</a> header field (<a href="#Part5" id="rfc.xref.Part5.1"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>). A partial GET requests that only part of the representation be transferred, as described in <a href="p5-range.html#header.range" title="Range">Section 5.4</a> of <a href="#Part5" id="rfc.xref.Part5.2"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>. The partial GET request is intended to reduce unnecessary network usage by allowing partially-retrieved representations 1024 1155 to be completed without transferring data already held by the client. 1025 1156 </p> 1026 <p id="rfc.section. 3.3.2.p.5">Bodies on GET requests have no defined semantics. Note that sending a body on a GET request might cause some existing implementations1157 <p id="rfc.section.4.3.2.p.5">Bodies on GET requests have no defined semantics. Note that sending a body on a GET request might cause some existing implementations 1027 1158 to reject the request. 1028 1159 </p> 1029 <p id="rfc.section. 3.3.2.p.6">The response to a GET request is cacheable and <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests (see <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).1030 </p> 1031 <p id="rfc.section. 3.3.2.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 12.2</a> for security considerations when used for forms.1032 </p> 1033 <h3 id="rfc.section. 3.3.3"><a href="#rfc.section.3.3.3">3.3.3</a> <a id="HEAD" href="#HEAD">HEAD</a></h3>1160 <p id="rfc.section.4.3.2.p.6">The response to a GET request is cacheable and <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests (see <a href="#Part6" id="rfc.xref.Part6.3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1161 </p> 1162 <p id="rfc.section.4.3.2.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 12.2</a> for security considerations when used for forms. 1163 </p> 1164 <h3 id="rfc.section.4.3.3"><a href="#rfc.section.4.3.3">4.3.3</a> <a id="HEAD" href="#HEAD">HEAD</a></h3> 1034 1165 <div id="rfc.iref.h.1"></div> 1035 1166 <div id="rfc.iref.m.3"></div> 1036 <p id="rfc.section. 3.3.3.p.1">The HEAD method is identical to GET except that the server <em class="bcp14">MUST NOT</em> return a message body in the response. The metadata contained in the HTTP header fields in response to a HEAD request <em class="bcp14">SHOULD</em> be identical to the information sent in response to a GET request. This method can be used for obtaining metadata about the1167 <p id="rfc.section.4.3.3.p.1">The HEAD method is identical to GET except that the server <em class="bcp14">MUST NOT</em> return a message body in the response. The metadata contained in the HTTP header fields in response to a HEAD request <em class="bcp14">SHOULD</em> be identical to the information sent in response to a GET request. This method can be used for obtaining metadata about the 1037 1168 representation implied by the request without transferring the representation body. This method is often used for testing 1038 1169 hypertext links for validity, accessibility, and recent modification. 1039 1170 </p> 1040 <p id="rfc.section. 3.3.3.p.2">The response to a HEAD request is cacheable and <em class="bcp14">MAY</em> be used to satisfy a subsequent HEAD request. It also has potential side effects on previously stored responses to GET; see <a href="p6-cache.html#head.effects" title="Updating Caches with HEAD Responses">Section 5</a> of <a href="#Part6" id="rfc.xref.Part6.3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>.1041 </p> 1042 <p id="rfc.section. 3.3.3.p.3">Bodies on HEAD requests have no defined semantics. Note that sending a body on a HEAD request might cause some existing implementations1171 <p id="rfc.section.4.3.3.p.2">The response to a HEAD request is cacheable and <em class="bcp14">MAY</em> be used to satisfy a subsequent HEAD request. It also has potential side effects on previously stored responses to GET; see <a href="p6-cache.html#head.effects" title="Updating Caches with HEAD Responses">Section 5</a> of <a href="#Part6" id="rfc.xref.Part6.4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>. 1172 </p> 1173 <p id="rfc.section.4.3.3.p.3">Bodies on HEAD requests have no defined semantics. Note that sending a body on a HEAD request might cause some existing implementations 1043 1174 to reject the request. 1044 1175 </p> 1045 1176 <div id="rfc.iref.p.1"></div> 1046 1177 <div id="rfc.iref.m.4"></div> 1047 <h3 id="rfc.section. 3.3.4"><a href="#rfc.section.3.3.4">3.3.4</a> <a id="POST" href="#POST">POST</a></h3>1048 <p id="rfc.section. 3.3.4.p.1">The POST method requests that the origin server accept the representation enclosed in the request as data to be processed1178 <h3 id="rfc.section.4.3.4"><a href="#rfc.section.4.3.4">4.3.4</a> <a id="POST" href="#POST">POST</a></h3> 1179 <p id="rfc.section.4.3.4.p.1">The POST method requests that the origin server accept the representation enclosed in the request as data to be processed 1049 1180 by the target resource. POST is designed to allow a uniform method to cover the following functions: 1050 1181 </p> … … 1055 1186 <li>Extending a database through an append operation.</li> 1056 1187 </ul> 1057 <p id="rfc.section. 3.3.4.p.2">The actual function performed by the POST method is determined by the server and is usually dependent on the effective request1188 <p id="rfc.section.4.3.4.p.2">The actual function performed by the POST method is determined by the server and is usually dependent on the effective request 1058 1189 URI. 1059 1190 </p> 1060 <p id="rfc.section. 3.3.4.p.3">The action performed by the POST method might not result in a resource that can be identified by a URI. In this case, either <a href="#status.200" class="smpl">200 (OK)</a> or <a href="#status.204" class="smpl">204 (No Content)</a> is the appropriate response status code, depending on whether or not the response includes a representation that describes1191 <p id="rfc.section.4.3.4.p.3">The action performed by the POST method might not result in a resource that can be identified by a URI. In this case, either <a href="#status.200" class="smpl">200 (OK)</a> or <a href="#status.204" class="smpl">204 (No Content)</a> is the appropriate response status code, depending on whether or not the response includes a representation that describes 1061 1192 the result. 1062 1193 </p> 1063 <p id="rfc.section. 3.3.4.p.4">If a resource has been created on the origin server, the response <em class="bcp14">SHOULD</em> be <a href="#status.201" class="smpl">201 (Created)</a> and contain a representation which describes the status of the request and refers to the new resource, and a <a href="#header.location" class="smpl">Location</a> header field (see <a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 10.13</a>).1064 </p> 1065 <p id="rfc.section. 3.3.4.p.5">Responses to POST requests are only cacheable when they include explicit freshness information (see <a href="p6-cache.html#calculating.freshness.lifetime" title="Calculating Freshness Lifetime">Section 4.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a <a href="#header.content-location" class="smpl">Content-Location</a> header field (see <a href="#header.content-location" id="rfc.xref.header.content-location.1" title="Content-Location">Section 10.8</a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests.1066 </p> 1067 <p id="rfc.section. 3.3.4.p.6">Note that POST caching is not widely implemented. However, the <a href="#status.303" class="smpl">303 (See Other)</a> response can be used to direct the user agent to retrieve a cacheable representation of the resource.1068 </p> 1069 <h3 id="rfc.section. 3.3.5"><a href="#rfc.section.3.3.5">3.3.5</a> <a id="PUT" href="#PUT">PUT</a></h3>1194 <p id="rfc.section.4.3.4.p.4">If a resource has been created on the origin server, the response <em class="bcp14">SHOULD</em> be <a href="#status.201" class="smpl">201 (Created)</a> and contain a representation which describes the status of the request and refers to the new resource, and a <a href="#header.location" class="smpl">Location</a> header field (see <a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 10.13</a>). 1195 </p> 1196 <p id="rfc.section.4.3.4.p.5">Responses to POST requests are only cacheable when they include explicit freshness information (see <a href="p6-cache.html#calculating.freshness.lifetime" title="Calculating Freshness Lifetime">Section 4.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a <a href="#header.content-location" class="smpl">Content-Location</a> header field (see <a href="#header.content-location" id="rfc.xref.header.content-location.2" title="Content-Location">Section 10.8</a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests. 1197 </p> 1198 <p id="rfc.section.4.3.4.p.6">Note that POST caching is not widely implemented. However, the <a href="#status.303" class="smpl">303 (See Other)</a> response can be used to direct the user agent to retrieve a cacheable representation of the resource. 1199 </p> 1200 <h3 id="rfc.section.4.3.5"><a href="#rfc.section.4.3.5">4.3.5</a> <a id="PUT" href="#PUT">PUT</a></h3> 1070 1201 <div id="rfc.iref.p.2"></div> 1071 1202 <div id="rfc.iref.m.5"></div> 1072 <p id="rfc.section. 3.3.5.p.1">The PUT method requests that the state of the target resource be created or replaced with the state defined by the representation1203 <p id="rfc.section.4.3.5.p.1">The PUT method requests that the state of the target resource be created or replaced with the state defined by the representation 1073 1204 enclosed in the request message payload. A successful PUT of a given representation would suggest that a subsequent GET on 1074 1205 that same target resource will result in an equivalent representation being returned in a <a href="#status.200" class="smpl">200 (OK)</a> response. However, there is no guarantee that such a state change will be observable, since the target resource might be acted … … 1077 1208 by the origin server. 1078 1209 </p> 1079 <p id="rfc.section. 3.3.5.p.2">If the target resource does not have a current representation and the PUT successfully creates one, then the origin server <em class="bcp14">MUST</em> inform the user agent by sending a <a href="#status.201" class="smpl">201 (Created)</a> response. If the target resource does have a current representation and that representation is successfully modified in accordance1210 <p id="rfc.section.4.3.5.p.2">If the target resource does not have a current representation and the PUT successfully creates one, then the origin server <em class="bcp14">MUST</em> inform the user agent by sending a <a href="#status.201" class="smpl">201 (Created)</a> response. If the target resource does have a current representation and that representation is successfully modified in accordance 1080 1211 with the state of the enclosed representation, then either a <a href="#status.200" class="smpl">200 (OK)</a> or <a href="#status.204" class="smpl">204 (No Content)</a> response <em class="bcp14">SHOULD</em> be sent to indicate successful completion of the request. 1081 1212 </p> 1082 <p id="rfc.section. 3.3.5.p.3">Unrecognized header fields <em class="bcp14">SHOULD</em> be ignored (i.e., not saved as part of the resource state).1083 </p> 1084 <p id="rfc.section. 3.3.5.p.4">An origin server <em class="bcp14">SHOULD</em> verify that the PUT representation is consistent with any constraints which the server has for the target resource that cannot1213 <p id="rfc.section.4.3.5.p.3">Unrecognized header fields <em class="bcp14">SHOULD</em> be ignored (i.e., not saved as part of the resource state). 1214 </p> 1215 <p id="rfc.section.4.3.5.p.4">An origin server <em class="bcp14">SHOULD</em> verify that the PUT representation is consistent with any constraints which the server has for the target resource that cannot 1085 1216 or will not be changed by the PUT. This is particularly important when the origin server uses internal configuration information 1086 1217 related to the URI in order to set the values for representation metadata on GET responses. When a PUT representation is inconsistent … … 1088 1219 appropriate error message containing sufficient information to explain why the representation is unsuitable. The <a href="#status.409" class="smpl">409 (Conflict)</a> or <a href="#status.415" class="smpl">415 (Unsupported Media Type)</a> status codes are suggested, with the latter being specific to constraints on <a href="#header.content-type" class="smpl">Content-Type</a> values. 1089 1220 </p> 1090 <p id="rfc.section. 3.3.5.p.5">For example, if the target resource is configured to always have a <a href="#header.content-type" class="smpl">Content-Type</a> of "text/html" and the representation being PUT has a Content-Type of "image/jpeg", then the origin server <em class="bcp14">SHOULD</em> do one of:1221 <p id="rfc.section.4.3.5.p.5">For example, if the target resource is configured to always have a <a href="#header.content-type" class="smpl">Content-Type</a> of "text/html" and the representation being PUT has a Content-Type of "image/jpeg", then the origin server <em class="bcp14">SHOULD</em> do one of: 1091 1222 </p> 1092 1223 <ol class="la"> … … 1099 1230 </li> 1100 1231 </ol> 1101 <p id="rfc.section. 3.3.5.p.6">HTTP does not define exactly how a PUT method affects the state of an origin server beyond what can be expressed by the intent1232 <p id="rfc.section.4.3.5.p.6">HTTP does not define exactly how a PUT method affects the state of an origin server beyond what can be expressed by the intent 1102 1233 of the user agent request and the semantics of the origin server response. It does not define what a resource might be, in 1103 1234 any sense of that word, beyond the interface provided via HTTP. It does not define how resource state is "stored", nor how … … 1106 1237 the server. 1107 1238 </p> 1108 <p id="rfc.section. 3.3.5.p.7">The fundamental difference between the POST and PUT methods is highlighted by the different intent for the target resource.1239 <p id="rfc.section.4.3.5.p.7">The fundamental difference between the POST and PUT methods is highlighted by the different intent for the target resource. 1109 1240 The target resource in a POST request is intended to handle the enclosed representation as a data-accepting process, such 1110 1241 as for a gateway to some other protocol or a document that accepts annotations. In contrast, the target resource in a PUT … … 1112 1243 and visible to intermediaries, even though the exact effect is only known by the origin server. 1113 1244 </p> 1114 <p id="rfc.section. 3.3.5.p.8">Proper interpretation of a PUT request presumes that the user agent knows what target resource is desired. A service that1245 <p id="rfc.section.4.3.5.p.8">Proper interpretation of a PUT request presumes that the user agent knows what target resource is desired. A service that 1115 1246 is intended to select a proper URI on behalf of the client, after receiving a state-changing request, <em class="bcp14">SHOULD</em> be implemented using the POST method rather than PUT. If the origin server will not make the requested PUT state change to 1116 1247 the target resource and instead wishes to have it applied to a different resource, such as when the resource has been moved 1117 1248 to a different URI, then the origin server <em class="bcp14">MUST</em> send a <a href="#status.301" class="smpl">301 (Moved Permanently)</a> response; the user agent <em class="bcp14">MAY</em> then make its own decision regarding whether or not to redirect the request. 1118 1249 </p> 1119 <p id="rfc.section. 3.3.5.p.9">A PUT request applied to the target resource <em class="bcp14">MAY</em> have side-effects on other resources. For example, an article might have a URI for identifying "the current version" (a resource)1250 <p id="rfc.section.4.3.5.p.9">A PUT request applied to the target resource <em class="bcp14">MAY</em> have side-effects on other resources. For example, an article might have a URI for identifying "the current version" (a resource) 1120 1251 which is separate from the URIs identifying each particular version (different resources that at one point shared the same 1121 1252 state as the current version resource). A successful PUT request on "the current version" URI might therefore create a new … … 1123 1254 the related resources. 1124 1255 </p> 1125 <p id="rfc.section. 3.3.5.p.10">An origin server <em class="bcp14">SHOULD</em> reject any PUT request that contains a <a href="p5-range.html#header.content-range" class="smpl">Content-Range</a> header field (<a href="p5-range.html#header.content-range" title="Content-Range">Section 5.2</a> of <a href="#Part5" id="rfc.xref.Part5.3"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>), since it might be misinterpreted as partial content (or might be partial content that is being mistakenly PUT as a full1256 <p id="rfc.section.4.3.5.p.10">An origin server <em class="bcp14">SHOULD</em> reject any PUT request that contains a <a href="p5-range.html#header.content-range" class="smpl">Content-Range</a> header field (<a href="p5-range.html#header.content-range" title="Content-Range">Section 5.2</a> of <a href="#Part5" id="rfc.xref.Part5.3"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>), since it might be misinterpreted as partial content (or might be partial content that is being mistakenly PUT as a full 1126 1257 representation). Partial content updates are possible by targeting a separately identified resource with state that overlaps 1127 1258 a portion of the larger resource, or by using a different method that has been specifically defined for partial updates (for 1128 1259 example, the PATCH method defined in <a href="#RFC5789" id="rfc.xref.RFC5789.1"><cite title="PATCH Method for HTTP">[RFC5789]</cite></a>). 1129 1260 </p> 1130 <p id="rfc.section. 3.3.5.p.11">Responses to the PUT method are not cacheable. If a PUT request passes through a cache that has one or more stored responses1131 for the effective request URI, those stored responses will be invalidated (see <a href="p6-cache.html#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 6</a> of <a href="#Part6" id="rfc.xref.Part6. 5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).1132 </p> 1133 <h3 id="rfc.section. 3.3.6"><a href="#rfc.section.3.3.6">3.3.6</a> <a id="DELETE" href="#DELETE">DELETE</a></h3>1261 <p id="rfc.section.4.3.5.p.11">Responses to the PUT method are not cacheable. If a PUT request passes through a cache that has one or more stored responses 1262 for the effective request URI, those stored responses will be invalidated (see <a href="p6-cache.html#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 6</a> of <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1263 </p> 1264 <h3 id="rfc.section.4.3.6"><a href="#rfc.section.4.3.6">4.3.6</a> <a id="DELETE" href="#DELETE">DELETE</a></h3> 1134 1265 <div id="rfc.iref.d.1"></div> 1135 1266 <div id="rfc.iref.m.6"></div> 1136 <p id="rfc.section. 3.3.6.p.1">The DELETE method requests that the origin server delete the target resource. This method <em class="bcp14">MAY</em> be overridden by human intervention (or other means) on the origin server. The client cannot be guaranteed that the operation1267 <p id="rfc.section.4.3.6.p.1">The DELETE method requests that the origin server delete the target resource. This method <em class="bcp14">MAY</em> be overridden by human intervention (or other means) on the origin server. The client cannot be guaranteed that the operation 1137 1268 has been carried out, even if the status code returned from the origin server indicates that the action has been completed 1138 1269 successfully. However, the server <em class="bcp14">SHOULD NOT</em> indicate success unless, at the time the response is given, it intends to delete the resource or move it to an inaccessible 1139 1270 location. 1140 1271 </p> 1141 <p id="rfc.section. 3.3.6.p.2">A successful response <em class="bcp14">SHOULD</em> be <a href="#status.200" class="smpl">200 (OK)</a> if the response includes a representation describing the status, <a href="#status.202" class="smpl">202 (Accepted)</a> if the action has not yet been enacted, or <a href="#status.204" class="smpl">204 (No Content)</a> if the action has been enacted but the response does not include a representation.1142 </p> 1143 <p id="rfc.section. 3.3.6.p.3">Bodies on DELETE requests have no defined semantics. Note that sending a body on a DELETE request might cause some existing1272 <p id="rfc.section.4.3.6.p.2">A successful response <em class="bcp14">SHOULD</em> be <a href="#status.200" class="smpl">200 (OK)</a> if the response includes a representation describing the status, <a href="#status.202" class="smpl">202 (Accepted)</a> if the action has not yet been enacted, or <a href="#status.204" class="smpl">204 (No Content)</a> if the action has been enacted but the response does not include a representation. 1273 </p> 1274 <p id="rfc.section.4.3.6.p.3">Bodies on DELETE requests have no defined semantics. Note that sending a body on a DELETE request might cause some existing 1144 1275 implementations to reject the request. 1145 1276 </p> 1146 <p id="rfc.section. 3.3.6.p.4">Responses to the DELETE method are not cacheable. If a DELETE request passes through a cache that has one or more stored responses1147 for the effective request URI, those stored responses will be invalidated (see <a href="p6-cache.html#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 6</a> of <a href="#Part6" id="rfc.xref.Part6. 6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).1148 </p> 1149 <h3 id="rfc.section. 3.3.7"><a href="#rfc.section.3.3.7">3.3.7</a> <a id="TRACE" href="#TRACE">TRACE</a></h3>1277 <p id="rfc.section.4.3.6.p.4">Responses to the DELETE method are not cacheable. If a DELETE request passes through a cache that has one or more stored responses 1278 for the effective request URI, those stored responses will be invalidated (see <a href="p6-cache.html#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 6</a> of <a href="#Part6" id="rfc.xref.Part6.7"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1279 </p> 1280 <h3 id="rfc.section.4.3.7"><a href="#rfc.section.4.3.7">4.3.7</a> <a id="TRACE" href="#TRACE">TRACE</a></h3> 1150 1281 <div id="rfc.iref.t.1"></div> 1151 1282 <div id="rfc.iref.m.7"></div> 1152 <p id="rfc.section. 3.3.7.p.1">The TRACE method requests a remote, application-layer loop-back of the request message. The final recipient of the request <em class="bcp14">SHOULD</em> reflect the message received back to the client as the message body of a <a href="#status.200" class="smpl">200 (OK)</a> response. The final recipient is either the origin server or the first proxy to receive a <a href="#header.max-forwards" class="smpl">Max-Forwards</a> value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 10.14</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message body.1153 </p> 1154 <p id="rfc.section. 3.3.7.p.2">TRACE allows the client to see what is being received at the other end of the request chain and use that data for testing1155 or diagnostic information. The value of the <a href="p1-messaging.html#header.via" class="smpl">Via</a> header field (<a href="p1-messaging.html#header.via" title="Via">Section 5.7</a> of <a href="#Part1" id="rfc.xref.Part1. 8"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is of particular interest, since it acts as a trace of the request chain. Use of the <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field allows the client to limit the length of the request chain, which is useful for testing a chain of proxies forwarding1283 <p id="rfc.section.4.3.7.p.1">The TRACE method requests a remote, application-layer loop-back of the request message. The final recipient of the request <em class="bcp14">SHOULD</em> reflect the message received back to the client as the message body of a <a href="#status.200" class="smpl">200 (OK)</a> response. The final recipient is either the origin server or the first proxy to receive a <a href="#header.max-forwards" class="smpl">Max-Forwards</a> value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 10.14</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message body. 1284 </p> 1285 <p id="rfc.section.4.3.7.p.2">TRACE allows the client to see what is being received at the other end of the request chain and use that data for testing 1286 or diagnostic information. The value of the <a href="p1-messaging.html#header.via" class="smpl">Via</a> header field (<a href="p1-messaging.html#header.via" title="Via">Section 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.10"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is of particular interest, since it acts as a trace of the request chain. Use of the <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field allows the client to limit the length of the request chain, which is useful for testing a chain of proxies forwarding 1156 1287 messages in an infinite loop. 1157 1288 </p> 1158 <p id="rfc.section. 3.3.7.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a <a href="#header.content-type" class="smpl">Content-Type</a> of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 7.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.9"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) and contain a message body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable.1289 <p id="rfc.section.4.3.7.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a <a href="#header.content-type" class="smpl">Content-Type</a> of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 7.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.11"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) and contain a message body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable. 1159 1290 </p> 1160 1291 <div id="rfc.iref.c.3"></div> 1161 1292 <div id="rfc.iref.m.8"></div> 1162 <h3 id="rfc.section. 3.3.8"><a href="#rfc.section.3.3.8">3.3.8</a> <a id="CONNECT" href="#CONNECT">CONNECT</a></h3>1163 <p id="rfc.section. 3.3.8.p.1">The CONNECT method requests that the proxy establish a tunnel to the request-target and, if successful, thereafter restrict1293 <h3 id="rfc.section.4.3.8"><a href="#rfc.section.4.3.8">4.3.8</a> <a id="CONNECT" href="#CONNECT">CONNECT</a></h3> 1294 <p id="rfc.section.4.3.8.p.1">The CONNECT method requests that the proxy establish a tunnel to the request-target and, if successful, thereafter restrict 1164 1295 its behavior to blind forwarding of packets until the connection is closed. 1165 1296 </p> 1166 <p id="rfc.section. 3.3.8.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.10"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon.1297 <p id="rfc.section.4.3.8.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon. 1167 1298 For example, 1168 1299 </p> 1169 <div id="rfc.figure.u. 2"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.11300 <div id="rfc.figure.u.3"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.1 1170 1301 Host: server.example.com:80 1171 1302 1172 </pre><p id="rfc.section. 3.3.8.p.4">Any <a href="#status.2xx" class="smpl">2xx (Successful)</a> response to a CONNECT request indicates that the proxy has established a connection to the requested host and port, and has1303 </pre><p id="rfc.section.4.3.8.p.4">Any <a href="#status.2xx" class="smpl">2xx (Successful)</a> response to a CONNECT request indicates that the proxy has established a connection to the requested host and port, and has 1173 1304 switched to tunneling the current connection to that server connection. The tunneled data from the server begins immediately 1174 1305 after the blank line that concludes the successful response's header block. 1175 1306 </p> 1176 <p id="rfc.section. 3.3.8.p.5">A server <em class="bcp14">SHOULD NOT</em> send any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> or <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a> header fields in a successful response. A client <em class="bcp14">MUST</em> ignore any Content-Length or Transfer-Encoding header fields received in a successful response.1177 </p> 1178 <p id="rfc.section. 3.3.8.p.6">Any response other than a successful response indicates that the tunnel has not yet been formed and that the connection remains1307 <p id="rfc.section.4.3.8.p.5">A server <em class="bcp14">SHOULD NOT</em> send any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> or <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a> header fields in a successful response. A client <em class="bcp14">MUST</em> ignore any Content-Length or Transfer-Encoding header fields received in a successful response. 1308 </p> 1309 <p id="rfc.section.4.3.8.p.6">Any response other than a successful response indicates that the tunnel has not yet been formed and that the connection remains 1179 1310 governed by HTTP. 1180 1311 </p> 1181 <p id="rfc.section. 3.3.8.p.7">Proxy authentication might be used to establish the authority to create a tunnel:</p>1182 <div id="rfc.figure.u. 3"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.11312 <p id="rfc.section.4.3.8.p.7">Proxy authentication might be used to establish the authority to create a tunnel:</p> 1313 <div id="rfc.figure.u.4"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.1 1183 1314 Host: server.example.com:80 1184 1315 Proxy-Authorization: basic aGVsbG86d29ybGQ= 1185 1316 1186 </pre><p id="rfc.section. 3.3.8.p.9">A message body on a CONNECT request has no defined semantics. Sending a body on a CONNECT request might cause existing implementations1317 </pre><p id="rfc.section.4.3.8.p.9">A message body on a CONNECT request has no defined semantics. Sending a body on a CONNECT request might cause existing implementations 1187 1318 to reject the request. 1188 1319 </p> 1189 <p id="rfc.section. 3.3.8.p.10">Similar to a pipelined HTTP/1.1 request, data to be tunneled from client to server <em class="bcp14">MAY</em> be sent immediately after the request (before a response is received). The usual caveats also apply: data can be discarded1320 <p id="rfc.section.4.3.8.p.10">Similar to a pipelined HTTP/1.1 request, data to be tunneled from client to server <em class="bcp14">MAY</em> be sent immediately after the request (before a response is received). The usual caveats also apply: data can be discarded 1190 1321 if the eventual response is negative, and the connection can be reset with no response if more than one TCP segment is outstanding. 1191 1322 </p> 1192 <p id="rfc.section. 3.3.8.p.11">It might be the case that the proxy itself can only reach the requested origin server through another proxy. In this case,1323 <p id="rfc.section.4.3.8.p.11">It might be the case that the proxy itself can only reach the requested origin server through another proxy. In this case, 1193 1324 the first proxy <em class="bcp14">SHOULD</em> make a CONNECT request of that next proxy, requesting a tunnel to the authority. A proxy <em class="bcp14">MUST NOT</em> respond with any <a href="#status.2xx" class="smpl">2xx</a> status code unless it has either a direct or tunnel connection established to the authority. 1194 1325 </p> 1195 <p id="rfc.section. 3.3.8.p.12">If at any point either one of the peers gets disconnected, any outstanding data that came from that peer will be passed to1326 <p id="rfc.section.4.3.8.p.12">If at any point either one of the peers gets disconnected, any outstanding data that came from that peer will be passed to 1196 1327 the other one, and after that also the other connection will be terminated by the proxy. If there is outstanding data to that 1197 1328 peer undelivered, that data will be discarded. 1198 1329 </p> 1199 <p id="rfc.section. 3.3.8.p.13">An origin server which receives a CONNECT request for itself <em class="bcp14">MAY</em> respond with a <a href="#status.2xx" class="smpl">2xx</a> status code to indicate that a connection is established. However, most origin servers do not implement CONNECT.1200 </p> 1201 <h1 id="rfc.section. 4"><a href="#rfc.section.4">4.</a> <a id="header.fields" href="#header.fields">Header Fields</a></h1>1202 <h2 id="rfc.section. 4.1"><a href="#rfc.section.4.1">4.1</a> <a id="request.fields" href="#request.fields">Request-modifier Header Fields</a></h2>1203 <h2 id="rfc.section. 4.2"><a href="#rfc.section.4.2">4.2</a> <a id="response.fields" href="#response.fields">Status-modifier Header Fields</a></h2>1204 <h2 id="rfc.section. 4.3"><a href="#rfc.section.4.3">4.3</a> <a id="resource.fields" href="#resource.fields">Resource Metadata Fields</a></h2>1205 <h2 id="rfc.section. 4.4"><a href="#rfc.section.4.4">4.4</a> <a id="payload.fields" href="#payload.fields">Payload Metadata Fields</a></h2>1206 <h2 id="rfc.section. 4.5"><a href="#rfc.section.4.5">4.5</a> <a id="request.header.fields" href="#request.header.fields">Request Header Fields</a></h2>1207 <p id="rfc.section. 4.5.p.1">The request header fields allow the client to pass additional information about the request, and about the client itself,1330 <p id="rfc.section.4.3.8.p.13">An origin server which receives a CONNECT request for itself <em class="bcp14">MAY</em> respond with a <a href="#status.2xx" class="smpl">2xx</a> status code to indicate that a connection is established. However, most origin servers do not implement CONNECT. 1331 </p> 1332 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="header.fields" href="#header.fields">Header Fields</a></h1> 1333 <h2 id="rfc.section.5.1"><a href="#rfc.section.5.1">5.1</a> <a id="request.fields" href="#request.fields">Request-modifier Header Fields</a></h2> 1334 <h2 id="rfc.section.5.2"><a href="#rfc.section.5.2">5.2</a> <a id="response.fields" href="#response.fields">Status-modifier Header Fields</a></h2> 1335 <h2 id="rfc.section.5.3"><a href="#rfc.section.5.3">5.3</a> <a id="resource.fields" href="#resource.fields">Resource Metadata Fields</a></h2> 1336 <h2 id="rfc.section.5.4"><a href="#rfc.section.5.4">5.4</a> <a id="payload.fields" href="#payload.fields">Payload Metadata Fields</a></h2> 1337 <h2 id="rfc.section.5.5"><a href="#rfc.section.5.5">5.5</a> <a id="request.header.fields" href="#request.header.fields">Request Header Fields</a></h2> 1338 <p id="rfc.section.5.5.p.1">The request header fields allow the client to pass additional information about the request, and about the client itself, 1208 1339 to the server. These fields act as request modifiers, with semantics equivalent to the parameters on a programming language 1209 1340 method invocation. 1210 1341 </p> 1211 <div id="rfc.table.u. 1">1342 <div id="rfc.table.u.3"> 1212 1343 <table class="tt full left" cellpadding="3" cellspacing="0"> 1213 1344 <thead> … … 1248 1379 <tr> 1249 1380 <td class="left">Host</td> 1250 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 5.4</a> of <a href="#Part1" id="rfc.xref.Part1.1 1"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td>1381 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 5.4</a> of <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td> 1251 1382 </tr> 1252 1383 <tr> 1253 1384 <td class="left">If-Match</td> 1254 <td class="left"><a href="p4-conditional.html#header.if-match" title="If-Match">Section 3.1</a> of <a href="#Part4" id="rfc.xref.Part4. 2"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1385 <td class="left"><a href="p4-conditional.html#header.if-match" title="If-Match">Section 3.1</a> of <a href="#Part4" id="rfc.xref.Part4.4"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1255 1386 </tr> 1256 1387 <tr> 1257 1388 <td class="left">If-Modified-Since</td> 1258 <td class="left"><a href="p4-conditional.html#header.if-modified-since" title="If-Modified-Since">Section 3.3</a> of <a href="#Part4" id="rfc.xref.Part4. 3"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1389 <td class="left"><a href="p4-conditional.html#header.if-modified-since" title="If-Modified-Since">Section 3.3</a> of <a href="#Part4" id="rfc.xref.Part4.5"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1259 1390 </tr> 1260 1391 <tr> 1261 1392 <td class="left">If-None-Match</td> 1262 <td class="left"><a href="p4-conditional.html#header.if-none-match" title="If-None-Match">Section 3.2</a> of <a href="#Part4" id="rfc.xref.Part4. 4"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1393 <td class="left"><a href="p4-conditional.html#header.if-none-match" title="If-None-Match">Section 3.2</a> of <a href="#Part4" id="rfc.xref.Part4.6"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1263 1394 </tr> 1264 1395 <tr> … … 1268 1399 <tr> 1269 1400 <td class="left">If-Unmodified-Since</td> 1270 <td class="left"><a href="p4-conditional.html#header.if-unmodified-since" title="If-Unmodified-Since">Section 3.4</a> of <a href="#Part4" id="rfc.xref.Part4. 5"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1401 <td class="left"><a href="p4-conditional.html#header.if-unmodified-since" title="If-Unmodified-Since">Section 3.4</a> of <a href="#Part4" id="rfc.xref.Part4.7"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1271 1402 </tr> 1272 1403 <tr> … … 1288 1419 <tr> 1289 1420 <td class="left">TE</td> 1290 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 2"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td>1421 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td> 1291 1422 </tr> 1292 1423 <tr> … … 1297 1428 </table> 1298 1429 </div> 1299 <h2 id="rfc.section. 4.6"><a href="#rfc.section.4.6">4.6</a> <a id="response.header.fields" href="#response.header.fields">Response Header Fields</a></h2>1300 <p id="rfc.section. 4.6.p.1">The response header fields allow the server to pass additional information about the response which cannot be placed in the1301 status-line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.1 3"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>).1302 </p> 1303 <div id="rfc.table.u. 2">1430 <h2 id="rfc.section.5.6"><a href="#rfc.section.5.6">5.6</a> <a id="response.header.fields" href="#response.header.fields">Response Header Fields</a></h2> 1431 <p id="rfc.section.5.6.p.1">The response header fields allow the server to pass additional information about the response which cannot be placed in the 1432 status-line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). 1433 </p> 1434 <div id="rfc.table.u.4"> 1304 1435 <table class="tt full left" cellpadding="3" cellspacing="0"> 1305 1436 <thead> … … 1316 1447 <tr> 1317 1448 <td class="left">Age</td> 1318 <td class="left"><a href="p6-cache.html#header.age" title="Age">Section 7.1</a> of <a href="#Part6" id="rfc.xref.Part6. 7"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td>1449 <td class="left"><a href="p6-cache.html#header.age" title="Age">Section 7.1</a> of <a href="#Part6" id="rfc.xref.Part6.8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 1319 1450 </tr> 1320 1451 <tr> … … 1328 1459 <tr> 1329 1460 <td class="left">ETag</td> 1330 <td class="left"><a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4. 6"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1461 <td class="left"><a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.8"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1331 1462 </tr> 1332 1463 <tr> … … 1348 1479 <tr> 1349 1480 <td class="left">Vary</td> 1350 <td class="left"><a href="p6-cache.html#header.vary" title="Vary">Section 7.5</a> of <a href="#Part6" id="rfc.xref.Part6. 8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td>1481 <td class="left"><a href="p6-cache.html#header.vary" title="Vary">Section 7.5</a> of <a href="#Part6" id="rfc.xref.Part6.9"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 1351 1482 </tr> 1352 1483 <tr> … … 1357 1488 </table> 1358 1489 </div> 1359 <h1 id="rfc.section. 5"><a href="#rfc.section.5">5.</a> <a id="status.codes" href="#status.codes">Response Status Codes</a></h1>1360 <p id="rfc.section. 5.p.1">The status-code element is a 3-digit integer result code of the attempt to understand and satisfy the request.</p>1361 <p id="rfc.section. 5.p.2">HTTP status codes are extensible. HTTP applications are not required to understand the meaning of all registered status codes,1490 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="status.codes" href="#status.codes">Response Status Codes</a></h1> 1491 <p id="rfc.section.6.p.1">The status-code element is a 3-digit integer result code of the attempt to understand and satisfy the request.</p> 1492 <p id="rfc.section.6.p.2">HTTP status codes are extensible. HTTP applications are not required to understand the meaning of all registered status codes, 1362 1493 though such understanding is obviously desirable. However, applications <em class="bcp14">MUST</em> understand the class of any status code, as indicated by the first digit, and treat any unrecognized response as being equivalent 1363 1494 to the x00 status code of that class, with the exception that an unrecognized response <em class="bcp14">MUST NOT</em> be cached. For example, if an unrecognized status code of 431 is received by the client, it can safely assume that there was … … 1365 1496 information which will explain the unusual status. 1366 1497 </p> 1367 <p id="rfc.section. 5.p.3">The first digit of the status-code defines the class of response. The last two digits do not have any categorization role.1498 <p id="rfc.section.6.p.3">The first digit of the status-code defines the class of response. The last two digits do not have any categorization role. 1368 1499 There are 5 values for the first digit: 1369 1500 </p> … … 1380 1511 </li> 1381 1512 </ul> 1382 <p id="rfc.section. 5.p.4">For most status codes the response can carry a payload, in which case a <a href="#header.content-type" class="smpl">Content-Type</a> header field indicates the payload's media type (<a href="#header.content-type" id="rfc.xref.header.content-type.1" title="Content-Type">Section 10.9</a>).1383 </p> 1384 <h2 id="rfc.section. 5.1"><a href="#rfc.section.5.1">5.1</a> <a id="overview.of.status.codes" href="#overview.of.status.codes">Overview of Status Codes</a></h2>1385 <p id="rfc.section. 5.1.p.1">The status codes listed below are defined in this specification, <a href="p4-conditional.html#status.code.definitions" title="Status Code Definitions">Section 4</a> of <a href="#Part4" id="rfc.xref.Part4.7"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>, <a href="p5-range.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part5" id="rfc.xref.Part5.7"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>, and <a href="p7-auth.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part7" id="rfc.xref.Part7.5"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>. The reason phrases listed here are only recommendations — they can be replaced by local equivalents without affecting the1513 <p id="rfc.section.6.p.4">For most status codes the response can carry a payload, in which case a <a href="#header.content-type" class="smpl">Content-Type</a> header field indicates the payload's media type (<a href="#header.content-type" id="rfc.xref.header.content-type.2" title="Content-Type">Section 10.9</a>). 1514 </p> 1515 <h2 id="rfc.section.6.1"><a href="#rfc.section.6.1">6.1</a> <a id="overview.of.status.codes" href="#overview.of.status.codes">Overview of Status Codes</a></h2> 1516 <p id="rfc.section.6.1.p.1">The status codes listed below are defined in this specification, <a href="p4-conditional.html#status.code.definitions" title="Status Code Definitions">Section 4</a> of <a href="#Part4" id="rfc.xref.Part4.9"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>, <a href="p5-range.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part5" id="rfc.xref.Part5.7"><cite title="HTTP/1.1, part 5: Range Requests">[Part5]</cite></a>, and <a href="p7-auth.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part7" id="rfc.xref.Part7.5"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>. The reason phrases listed here are only recommendations — they can be replaced by local equivalents without affecting the 1386 1517 protocol. 1387 1518 </p> 1388 <div id="rfc.table.u. 3">1519 <div id="rfc.table.u.5"> 1389 1520 <table class="tt full left" cellpadding="3" cellspacing="0"> 1390 1521 <thead> … … 1399 1530 <td class="left">100</td> 1400 1531 <td class="left">Continue</td> 1401 <td class="left"><a href="#status.100" id="rfc.xref.status.100.1" title="100 Continue">Section 5.2.1</a></td>1532 <td class="left"><a href="#status.100" id="rfc.xref.status.100.1" title="100 Continue">Section 6.2.1</a></td> 1402 1533 </tr> 1403 1534 <tr> 1404 1535 <td class="left">101</td> 1405 1536 <td class="left">Switching Protocols</td> 1406 <td class="left"><a href="#status.101" id="rfc.xref.status.101.1" title="101 Switching Protocols">Section 5.2.2</a></td>1537 <td class="left"><a href="#status.101" id="rfc.xref.status.101.1" title="101 Switching Protocols">Section 6.2.2</a></td> 1407 1538 </tr> 1408 1539 <tr> 1409 1540 <td class="left">200</td> 1410 1541 <td class="left">OK</td> 1411 <td class="left"><a href="#status.200" id="rfc.xref.status.200.1" title="200 OK">Section 5.3.1</a></td>1542 <td class="left"><a href="#status.200" id="rfc.xref.status.200.1" title="200 OK">Section 6.3.1</a></td> 1412 1543 </tr> 1413 1544 <tr> 1414 1545 <td class="left">201</td> 1415 1546 <td class="left">Created</td> 1416 <td class="left"><a href="#status.201" id="rfc.xref.status.201.1" title="201 Created">Section 5.3.2</a></td>1547 <td class="left"><a href="#status.201" id="rfc.xref.status.201.1" title="201 Created">Section 6.3.2</a></td> 1417 1548 </tr> 1418 1549 <tr> 1419 1550 <td class="left">202</td> 1420 1551 <td class="left">Accepted</td> 1421 <td class="left"><a href="#status.202" id="rfc.xref.status.202.1" title="202 Accepted">Section 5.3.3</a></td>1552 <td class="left"><a href="#status.202" id="rfc.xref.status.202.1" title="202 Accepted">Section 6.3.3</a></td> 1422 1553 </tr> 1423 1554 <tr> 1424 1555 <td class="left">203</td> 1425 1556 <td class="left">Non-Authoritative Information</td> 1426 <td class="left"><a href="#status.203" id="rfc.xref.status.203.1" title="203 Non-Authoritative Information">Section 5.3.4</a></td>1557 <td class="left"><a href="#status.203" id="rfc.xref.status.203.1" title="203 Non-Authoritative Information">Section 6.3.4</a></td> 1427 1558 </tr> 1428 1559 <tr> 1429 1560 <td class="left">204</td> 1430 1561 <td class="left">No Content</td> 1431 <td class="left"><a href="#status.204" id="rfc.xref.status.204.1" title="204 No Content">Section 5.3.5</a></td>1562 <td class="left"><a href="#status.204" id="rfc.xref.status.204.1" title="204 No Content">Section 6.3.5</a></td> 1432 1563 </tr> 1433 1564 <tr> 1434 1565 <td class="left">205</td> 1435 1566 <td class="left">Reset Content</td> 1436 <td class="left"><a href="#status.205" id="rfc.xref.status.205.1" title="205 Reset Content">Section 5.3.6</a></td>1567 <td class="left"><a href="#status.205" id="rfc.xref.status.205.1" title="205 Reset Content">Section 6.3.6</a></td> 1437 1568 </tr> 1438 1569 <tr> … … 1444 1575 <td class="left">300</td> 1445 1576 <td class="left">Multiple Choices</td> 1446 <td class="left"><a href="#status.300" id="rfc.xref.status.300.1" title="300 Multiple Choices">Section 5.4.1</a></td>1577 <td class="left"><a href="#status.300" id="rfc.xref.status.300.1" title="300 Multiple Choices">Section 6.4.1</a></td> 1447 1578 </tr> 1448 1579 <tr> 1449 1580 <td class="left">301</td> 1450 1581 <td class="left">Moved Permanently</td> 1451 <td class="left"><a href="#status.301" id="rfc.xref.status.301.1" title="301 Moved Permanently">Section 5.4.2</a></td>1582 <td class="left"><a href="#status.301" id="rfc.xref.status.301.1" title="301 Moved Permanently">Section 6.4.2</a></td> 1452 1583 </tr> 1453 1584 <tr> 1454 1585 <td class="left">302</td> 1455 1586 <td class="left">Found</td> 1456 <td class="left"><a href="#status.302" id="rfc.xref.status.302.1" title="302 Found">Section 5.4.3</a></td>1587 <td class="left"><a href="#status.302" id="rfc.xref.status.302.1" title="302 Found">Section 6.4.3</a></td> 1457 1588 </tr> 1458 1589 <tr> 1459 1590 <td class="left">303</td> 1460 1591 <td class="left">See Other</td> 1461 <td class="left"><a href="#status.303" id="rfc.xref.status.303.1" title="303 See Other">Section 5.4.4</a></td>1592 <td class="left"><a href="#status.303" id="rfc.xref.status.303.1" title="303 See Other">Section 6.4.4</a></td> 1462 1593 </tr> 1463 1594 <tr> 1464 1595 <td class="left">304</td> 1465 1596 <td class="left">Not Modified</td> 1466 <td id="status.304" class="left"><a href="p4-conditional.html#status.304" title="304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4. 8"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1597 <td id="status.304" class="left"><a href="p4-conditional.html#status.304" title="304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4.10"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1467 1598 </tr> 1468 1599 <tr> 1469 1600 <td class="left">305</td> 1470 1601 <td class="left">Use Proxy</td> 1471 <td class="left"><a href="#status.305" id="rfc.xref.status.305.1" title="305 Use Proxy">Section 5.4.5</a></td>1602 <td class="left"><a href="#status.305" id="rfc.xref.status.305.1" title="305 Use Proxy">Section 6.4.5</a></td> 1472 1603 </tr> 1473 1604 <tr> 1474 1605 <td class="left">307</td> 1475 1606 <td class="left">Temporary Redirect</td> 1476 <td class="left"><a href="#status.307" id="rfc.xref.status.307.1" title="307 Temporary Redirect">Section 5.4.7</a></td>1607 <td class="left"><a href="#status.307" id="rfc.xref.status.307.1" title="307 Temporary Redirect">Section 6.4.7</a></td> 1477 1608 </tr> 1478 1609 <tr> 1479 1610 <td class="left">400</td> 1480 1611 <td class="left">Bad Request</td> 1481 <td class="left"><a href="#status.400" id="rfc.xref.status.400.1" title="400 Bad Request">Section 5.5.1</a></td>1612 <td class="left"><a href="#status.400" id="rfc.xref.status.400.1" title="400 Bad Request">Section 6.5.1</a></td> 1482 1613 </tr> 1483 1614 <tr> … … 1489 1620 <td class="left">402</td> 1490 1621 <td class="left">Payment Required</td> 1491 <td class="left"><a href="#status.402" id="rfc.xref.status.402.1" title="402 Payment Required">Section 5.5.2</a></td>1622 <td class="left"><a href="#status.402" id="rfc.xref.status.402.1" title="402 Payment Required">Section 6.5.2</a></td> 1492 1623 </tr> 1493 1624 <tr> 1494 1625 <td class="left">403</td> 1495 1626 <td class="left">Forbidden</td> 1496 <td class="left"><a href="#status.403" id="rfc.xref.status.403.1" title="403 Forbidden">Section 5.5.3</a></td>1627 <td class="left"><a href="#status.403" id="rfc.xref.status.403.1" title="403 Forbidden">Section 6.5.3</a></td> 1497 1628 </tr> 1498 1629 <tr> 1499 1630 <td class="left">404</td> 1500 1631 <td class="left">Not Found</td> 1501 <td class="left"><a href="#status.404" id="rfc.xref.status.404.1" title="404 Not Found">Section 5.5.4</a></td>1632 <td class="left"><a href="#status.404" id="rfc.xref.status.404.1" title="404 Not Found">Section 6.5.4</a></td> 1502 1633 </tr> 1503 1634 <tr> 1504 1635 <td class="left">405</td> 1505 1636 <td class="left">Method Not Allowed</td> 1506 <td class="left"><a href="#status.405" id="rfc.xref.status.405.1" title="405 Method Not Allowed">Section 5.5.5</a></td>1637 <td class="left"><a href="#status.405" id="rfc.xref.status.405.1" title="405 Method Not Allowed">Section 6.5.5</a></td> 1507 1638 </tr> 1508 1639 <tr> 1509 1640 <td class="left">406</td> 1510 1641 <td class="left">Not Acceptable</td> 1511 <td class="left"><a href="#status.406" id="rfc.xref.status.406.1" title="406 Not Acceptable">Section 5.5.6</a></td>1642 <td class="left"><a href="#status.406" id="rfc.xref.status.406.1" title="406 Not Acceptable">Section 6.5.6</a></td> 1512 1643 </tr> 1513 1644 <tr> … … 1519 1650 <td class="left">408</td> 1520 1651 <td class="left">Request Time-out</td> 1521 <td class="left"><a href="#status.408" id="rfc.xref.status.408.1" title="408 Request Timeout">Section 5.5.7</a></td>1652 <td class="left"><a href="#status.408" id="rfc.xref.status.408.1" title="408 Request Timeout">Section 6.5.7</a></td> 1522 1653 </tr> 1523 1654 <tr> 1524 1655 <td class="left">409</td> 1525 1656 <td class="left">Conflict</td> 1526 <td class="left"><a href="#status.409" id="rfc.xref.status.409.1" title="409 Conflict">Section 5.5.8</a></td>1657 <td class="left"><a href="#status.409" id="rfc.xref.status.409.1" title="409 Conflict">Section 6.5.8</a></td> 1527 1658 </tr> 1528 1659 <tr> 1529 1660 <td class="left">410</td> 1530 1661 <td class="left">Gone</td> 1531 <td class="left"><a href="#status.410" id="rfc.xref.status.410.1" title="410 Gone">Section 5.5.9</a></td>1662 <td class="left"><a href="#status.410" id="rfc.xref.status.410.1" title="410 Gone">Section 6.5.9</a></td> 1532 1663 </tr> 1533 1664 <tr> 1534 1665 <td class="left">411</td> 1535 1666 <td class="left">Length Required</td> 1536 <td class="left"><a href="#status.411" id="rfc.xref.status.411.1" title="411 Length Required">Section 5.5.10</a></td>1667 <td class="left"><a href="#status.411" id="rfc.xref.status.411.1" title="411 Length Required">Section 6.5.10</a></td> 1537 1668 </tr> 1538 1669 <tr> 1539 1670 <td class="left">412</td> 1540 1671 <td class="left">Precondition Failed</td> 1541 <td id="status.412" class="left"><a href="p4-conditional.html#status.412" title="412 Precondition Failed">Section 4.2</a> of <a href="#Part4" id="rfc.xref.Part4. 9"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1672 <td id="status.412" class="left"><a href="p4-conditional.html#status.412" title="412 Precondition Failed">Section 4.2</a> of <a href="#Part4" id="rfc.xref.Part4.11"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1542 1673 </tr> 1543 1674 <tr> 1544 1675 <td class="left">413</td> 1545 1676 <td class="left">Request Representation Too Large</td> 1546 <td class="left"><a href="#status.413" id="rfc.xref.status.413.1" title="413 Request Representation Too Large">Section 5.5.11</a></td>1677 <td class="left"><a href="#status.413" id="rfc.xref.status.413.1" title="413 Request Representation Too Large">Section 6.5.11</a></td> 1547 1678 </tr> 1548 1679 <tr> 1549 1680 <td class="left">414</td> 1550 1681 <td class="left">URI Too Long</td> 1551 <td class="left"><a href="#status.414" id="rfc.xref.status.414.1" title="414 URI Too Long">Section 5.5.12</a></td>1682 <td class="left"><a href="#status.414" id="rfc.xref.status.414.1" title="414 URI Too Long">Section 6.5.12</a></td> 1552 1683 </tr> 1553 1684 <tr> 1554 1685 <td class="left">415</td> 1555 1686 <td class="left">Unsupported Media Type</td> 1556 <td class="left"><a href="#status.415" id="rfc.xref.status.415.1" title="415 Unsupported Media Type">Section 5.5.13</a></td>1687 <td class="left"><a href="#status.415" id="rfc.xref.status.415.1" title="415 Unsupported Media Type">Section 6.5.13</a></td> 1557 1688 </tr> 1558 1689 <tr> … … 1564 1695 <td class="left">417</td> 1565 1696 <td class="left">Expectation Failed</td> 1566 <td class="left"><a href="#status.417" id="rfc.xref.status.417.1" title="417 Expectation Failed">Section 5.5.14</a></td>1697 <td class="left"><a href="#status.417" id="rfc.xref.status.417.1" title="417 Expectation Failed">Section 6.5.14</a></td> 1567 1698 </tr> 1568 1699 <tr> 1569 1700 <td class="left">426</td> 1570 1701 <td class="left">Upgrade Required</td> 1571 <td class="left"><a href="#status.426" id="rfc.xref.status.426.1" title="426 Upgrade Required">Section 5.5.15</a></td>1702 <td class="left"><a href="#status.426" id="rfc.xref.status.426.1" title="426 Upgrade Required">Section 6.5.15</a></td> 1572 1703 </tr> 1573 1704 <tr> 1574 1705 <td class="left">500</td> 1575 1706 <td class="left">Internal Server Error</td> 1576 <td class="left"><a href="#status.500" id="rfc.xref.status.500.1" title="500 Internal Server Error">Section 5.6.1</a></td>1707 <td class="left"><a href="#status.500" id="rfc.xref.status.500.1" title="500 Internal Server Error">Section 6.6.1</a></td> 1577 1708 </tr> 1578 1709 <tr> 1579 1710 <td class="left">501</td> 1580 1711 <td class="left">Not Implemented</td> 1581 <td class="left"><a href="#status.501" id="rfc.xref.status.501.1" title="501 Not Implemented">Section 5.6.2</a></td>1712 <td class="left"><a href="#status.501" id="rfc.xref.status.501.1" title="501 Not Implemented">Section 6.6.2</a></td> 1582 1713 </tr> 1583 1714 <tr> 1584 1715 <td class="left">502</td> 1585 1716 <td class="left">Bad Gateway</td> 1586 <td class="left"><a href="#status.502" id="rfc.xref.status.502.1" title="502 Bad Gateway">Section 5.6.3</a></td>1717 <td class="left"><a href="#status.502" id="rfc.xref.status.502.1" title="502 Bad Gateway">Section 6.6.3</a></td> 1587 1718 </tr> 1588 1719 <tr> 1589 1720 <td class="left">503</td> 1590 1721 <td class="left">Service Unavailable</td> 1591 <td class="left"><a href="#status.503" id="rfc.xref.status.503.1" title="503 Service Unavailable">Section 5.6.4</a></td>1722 <td class="left"><a href="#status.503" id="rfc.xref.status.503.1" title="503 Service Unavailable">Section 6.6.4</a></td> 1592 1723 </tr> 1593 1724 <tr> 1594 1725 <td class="left">504</td> 1595 1726 <td class="left">Gateway Time-out</td> 1596 <td class="left"><a href="#status.504" id="rfc.xref.status.504.1" title="504 Gateway Timeout">Section 5.6.5</a></td>1727 <td class="left"><a href="#status.504" id="rfc.xref.status.504.1" title="504 Gateway Timeout">Section 6.6.5</a></td> 1597 1728 </tr> 1598 1729 <tr> 1599 1730 <td class="left">505</td> 1600 1731 <td class="left">HTTP Version not supported</td> 1601 <td class="left"><a href="#status.505" id="rfc.xref.status.505.1" title="505 HTTP Version Not Supported">Section 5.6.6</a></td>1732 <td class="left"><a href="#status.505" id="rfc.xref.status.505.1" title="505 HTTP Version Not Supported">Section 6.6.6</a></td> 1602 1733 </tr> 1603 1734 </tbody> 1604 1735 </table> 1605 1736 </div> 1606 <p id="rfc.section. 5.1.p.2">Note that this list is not exhaustive — it does not include extension status codes defined in other specifications.</p>1607 <h2 id="rfc.section. 5.2"><a href="#rfc.section.5.2">5.2</a> <a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2>1608 <div id="rfc.iref.2 1"></div>1609 <div id="rfc.iref.s. 2"></div>1610 <p id="rfc.section. 5.2.p.1">This class of status code indicates a provisional response, consisting only of the status-line and optional header fields,1737 <p id="rfc.section.6.1.p.2">Note that this list is not exhaustive — it does not include extension status codes defined in other specifications.</p> 1738 <h2 id="rfc.section.6.2"><a href="#rfc.section.6.2">6.2</a> <a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2> 1739 <div id="rfc.iref.23"></div> 1740 <div id="rfc.iref.s.3"></div> 1741 <p id="rfc.section.6.2.p.1">This class of status code indicates a provisional response, consisting only of the status-line and optional header fields, 1611 1742 and is terminated by an empty line. There are no required header fields for this class of status code. Since HTTP/1.0 did 1612 1743 not define any 1xx status codes, servers <em class="bcp14">MUST NOT</em> send a 1xx response to an HTTP/1.0 client except under experimental conditions. 1613 1744 </p> 1614 <p id="rfc.section. 5.2.p.2">A client <em class="bcp14">MUST</em> be prepared to accept one or more 1xx status responses prior to a regular response, even if the client does not expect a <a href="#status.100" class="smpl">1001745 <p id="rfc.section.6.2.p.2">A client <em class="bcp14">MUST</em> be prepared to accept one or more 1xx status responses prior to a regular response, even if the client does not expect a <a href="#status.100" class="smpl">100 1615 1746 (Continue)</a> status message. Unexpected 1xx status responses <em class="bcp14">MAY</em> be ignored by a user agent. 1616 1747 </p> 1617 <p id="rfc.section. 5.2.p.3">Proxies <em class="bcp14">MUST</em> forward 1xx responses, unless the connection between the proxy and its client has been closed, or unless the proxy itself1748 <p id="rfc.section.6.2.p.3">Proxies <em class="bcp14">MUST</em> forward 1xx responses, unless the connection between the proxy and its client has been closed, or unless the proxy itself 1618 1749 requested the generation of the 1xx response. (For example, if a proxy adds an "Expect: 100-continue" field when it forwards 1619 1750 a request, then it need not forward the corresponding <a href="#status.100" class="smpl">100 (Continue)</a> response(s).) 1620 1751 </p> 1621 <div id="rfc.iref.2 2"></div>1622 <div id="rfc.iref.s. 3"></div>1623 <h3 id="rfc.section. 5.2.1"><a href="#rfc.section.5.2.1">5.2.1</a> <a id="status.100" href="#status.100">100 Continue</a></h3>1624 <p id="rfc.section. 5.2.1.p.1">The client <em class="bcp14">SHOULD</em> continue with its request. This interim response is used to inform the client that the initial part of the request has been1752 <div id="rfc.iref.24"></div> 1753 <div id="rfc.iref.s.4"></div> 1754 <h3 id="rfc.section.6.2.1"><a href="#rfc.section.6.2.1">6.2.1</a> <a id="status.100" href="#status.100">100 Continue</a></h3> 1755 <p id="rfc.section.6.2.1.p.1">The client <em class="bcp14">SHOULD</em> continue with its request. This interim response is used to inform the client that the initial part of the request has been 1625 1756 received and has not yet been rejected by the server. The client <em class="bcp14">SHOULD</em> continue by sending the remainder of the request or, if the request has already been completed, ignore this response. The 1626 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 4"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> for detailed discussion of the use and handling of this status code.1627 </p> 1628 <div id="rfc.iref.2 3"></div>1629 <div id="rfc.iref.s. 4"></div>1630 <h3 id="rfc.section. 5.2.2"><a href="#rfc.section.5.2.2">5.2.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3>1631 <p id="rfc.section. 5.2.2.p.1">The server understands and is willing to comply with the client's request, via the <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.4</a> of <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined1757 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.3</a> of <a href="#Part1" id="rfc.xref.Part1.16"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> for detailed discussion of the use and handling of this status code. 1758 </p> 1759 <div id="rfc.iref.25"></div> 1760 <div id="rfc.iref.s.5"></div> 1761 <h3 id="rfc.section.6.2.2"><a href="#rfc.section.6.2.2">6.2.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3> 1762 <p id="rfc.section.6.2.2.p.1">The server understands and is willing to comply with the client's request, via the <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.4</a> of <a href="#Part1" id="rfc.xref.Part1.17"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined 1632 1763 by the response's Upgrade header field immediately after the empty line which terminates the 101 response. 1633 1764 </p> 1634 <p id="rfc.section. 5.2.2.p.2">The protocol <em class="bcp14">SHOULD</em> be switched only when it is advantageous to do so. For example, switching to a newer version of HTTP is advantageous over1765 <p id="rfc.section.6.2.2.p.2">The protocol <em class="bcp14">SHOULD</em> be switched only when it is advantageous to do so. For example, switching to a newer version of HTTP is advantageous over 1635 1766 older versions, and switching to a real-time, synchronous protocol might be advantageous when delivering resources that use 1636 1767 such features. 1637 1768 </p> 1638 <h2 id="rfc.section.5.3"><a href="#rfc.section.5.3">5.3</a> <a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2> 1639 <div id="rfc.iref.24"></div> 1640 <div id="rfc.iref.s.5"></div> 1641 <p id="rfc.section.5.3.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p> 1642 <div id="rfc.iref.25"></div> 1769 <h2 id="rfc.section.6.3"><a href="#rfc.section.6.3">6.3</a> <a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2> 1770 <div id="rfc.iref.26"></div> 1643 1771 <div id="rfc.iref.s.6"></div> 1644 <h3 id="rfc.section.5.3.1"><a href="#rfc.section.5.3.1">5.3.1</a> <a id="status.200" href="#status.200">200 OK</a></h3> 1645 <p id="rfc.section.5.3.1.p.1">The request has succeeded. The payload returned with the response is dependent on the method used in the request, for example: </p> 1772 <p id="rfc.section.6.3.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p> 1773 <div id="rfc.iref.27"></div> 1774 <div id="rfc.iref.s.7"></div> 1775 <h3 id="rfc.section.6.3.1"><a href="#rfc.section.6.3.1">6.3.1</a> <a id="status.200" href="#status.200">200 OK</a></h3> 1776 <p id="rfc.section.6.3.1.p.1">The request has succeeded. The payload returned with the response is dependent on the method used in the request, for example: </p> 1646 1777 <dl> 1647 1778 <dt>GET</dt> … … 1654 1785 <dd>a representation containing the request message as received by the end server.</dd> 1655 1786 </dl> 1656 <p id="rfc.section. 5.3.1.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.9"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 200 responses.1657 </p> 1658 <div id="rfc.iref.2 6"></div>1659 <div id="rfc.iref.s. 7"></div>1660 <h3 id="rfc.section. 5.3.2"><a href="#rfc.section.5.3.2">5.3.2</a> <a id="status.201" href="#status.201">201 Created</a></h3>1661 <p id="rfc.section. 5.3.2.p.1">The request has been fulfilled and has resulted in one or more new resources being created.</p>1662 <p id="rfc.section. 5.3.2.p.2">Newly created resources are typically linked to from the response payload, with the most relevant URI also being carried in1787 <p id="rfc.section.6.3.1.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.10"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 200 responses. 1788 </p> 1789 <div id="rfc.iref.28"></div> 1790 <div id="rfc.iref.s.8"></div> 1791 <h3 id="rfc.section.6.3.2"><a href="#rfc.section.6.3.2">6.3.2</a> <a id="status.201" href="#status.201">201 Created</a></h3> 1792 <p id="rfc.section.6.3.2.p.1">The request has been fulfilled and has resulted in one or more new resources being created.</p> 1793 <p id="rfc.section.6.3.2.p.2">Newly created resources are typically linked to from the response payload, with the most relevant URI also being carried in 1663 1794 the <a href="#header.location" class="smpl">Location</a> header field. If the newly created resource's URI is the same as the Effective Request URI, this information can be omitted 1664 1795 (e.g., in the case of a response to a PUT request). 1665 1796 </p> 1666 <p id="rfc.section. 5.3.2.p.3">The origin server <em class="bcp14">MUST</em> create the resource(s) before returning the 201 status code. If the action cannot be carried out immediately, the server <em class="bcp14">SHOULD</em> respond with <a href="#status.202" class="smpl">202 (Accepted)</a> response instead.1667 </p> 1668 <p id="rfc.section. 5.3.2.p.4">A 201 response <em class="bcp14">MAY</em> contain an <a href="p4-conditional.html#header.etag" class="smpl">ETag</a> response header field indicating the current value of the entity-tag for the representation of the resource identified by1669 the <a href="#header.location" class="smpl">Location</a> header field or, in case the Location header field was omitted, by the Effective Request URI (see <a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.1 0"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>).1670 </p> 1671 <div id="rfc.iref.2 7"></div>1672 <div id="rfc.iref.s. 8"></div>1673 <h3 id="rfc.section. 5.3.3"><a href="#rfc.section.5.3.3">5.3.3</a> <a id="status.202" href="#status.202">202 Accepted</a></h3>1674 <p id="rfc.section. 5.3.3.p.1">The request has been accepted for processing, but the processing has not been completed. The request might or might not eventually1797 <p id="rfc.section.6.3.2.p.3">The origin server <em class="bcp14">MUST</em> create the resource(s) before returning the 201 status code. If the action cannot be carried out immediately, the server <em class="bcp14">SHOULD</em> respond with <a href="#status.202" class="smpl">202 (Accepted)</a> response instead. 1798 </p> 1799 <p id="rfc.section.6.3.2.p.4">A 201 response <em class="bcp14">MAY</em> contain an <a href="p4-conditional.html#header.etag" class="smpl">ETag</a> response header field indicating the current value of the entity-tag for the representation of the resource identified by 1800 the <a href="#header.location" class="smpl">Location</a> header field or, in case the Location header field was omitted, by the Effective Request URI (see <a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.12"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). 1801 </p> 1802 <div id="rfc.iref.29"></div> 1803 <div id="rfc.iref.s.9"></div> 1804 <h3 id="rfc.section.6.3.3"><a href="#rfc.section.6.3.3">6.3.3</a> <a id="status.202" href="#status.202">202 Accepted</a></h3> 1805 <p id="rfc.section.6.3.3.p.1">The request has been accepted for processing, but the processing has not been completed. The request might or might not eventually 1675 1806 be acted upon, as it might be disallowed when processing actually takes place. There is no facility for re-sending a status 1676 1807 code from an asynchronous operation such as this. 1677 1808 </p> 1678 <p id="rfc.section. 5.3.3.p.2">The 202 response is intentionally non-committal. Its purpose is to allow a server to accept a request for some other process1809 <p id="rfc.section.6.3.3.p.2">The 202 response is intentionally non-committal. Its purpose is to allow a server to accept a request for some other process 1679 1810 (perhaps a batch-oriented process that is only run once per day) without requiring that the user agent's connection to the 1680 1811 server persist until the process is completed. The representation returned with this response <em class="bcp14">SHOULD</em> include an indication of the request's current status and either a pointer to a status monitor or some estimate of when the 1681 1812 user can expect the request to be fulfilled. 1682 1813 </p> 1683 <div id="rfc.iref.28"></div> 1684 <div id="rfc.iref.s.9"></div> 1685 <h3 id="rfc.section.5.3.4"><a href="#rfc.section.5.3.4">5.3.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3> 1686 <p id="rfc.section.5.3.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.3</a> of <a href="#Part1" id="rfc.xref.Part1.16"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). Note that the behavior of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 7.2</a> of <a href="#Part6" id="rfc.xref.Part6.10"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1687 </p> 1688 <p id="rfc.section.5.3.4.p.2">This status code is only appropriate when the response status code would have been <a href="#status.200" class="smpl">200 (OK)</a> otherwise. When the status code before transformation would have been different, the 214 Transformation Applied warn-code 1689 (<a href="p6-cache.html#header.warning" title="Warning">Section 7.6</a> of <a href="#Part6" id="rfc.xref.Part6.11"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) is appropriate. 1690 </p> 1691 <p id="rfc.section.5.3.4.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 203 responses. 1692 </p> 1693 <div id="rfc.iref.29"></div> 1814 <div id="rfc.iref.30"></div> 1694 1815 <div id="rfc.iref.s.10"></div> 1695 <h3 id="rfc.section.5.3.5"><a href="#rfc.section.5.3.5">5.3.5</a> <a id="status.204" href="#status.204">204 No Content</a></h3> 1696 <p id="rfc.section.5.3.5.p.1">The 204 (No Content) status code indicates that the server has successfully fulfilled the request and that there is no additional 1816 <h3 id="rfc.section.6.3.4"><a href="#rfc.section.6.3.4">6.3.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3> 1817 <p id="rfc.section.6.3.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.3</a> of <a href="#Part1" id="rfc.xref.Part1.18"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). Note that the behavior of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 7.2</a> of <a href="#Part6" id="rfc.xref.Part6.11"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1818 </p> 1819 <p id="rfc.section.6.3.4.p.2">This status code is only appropriate when the response status code would have been <a href="#status.200" class="smpl">200 (OK)</a> otherwise. When the status code before transformation would have been different, the 214 Transformation Applied warn-code 1820 (<a href="p6-cache.html#header.warning" title="Warning">Section 7.6</a> of <a href="#Part6" id="rfc.xref.Part6.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) is appropriate. 1821 </p> 1822 <p id="rfc.section.6.3.4.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.13"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 203 responses. 1823 </p> 1824 <div id="rfc.iref.31"></div> 1825 <div id="rfc.iref.s.11"></div> 1826 <h3 id="rfc.section.6.3.5"><a href="#rfc.section.6.3.5">6.3.5</a> <a id="status.204" href="#status.204">204 No Content</a></h3> 1827 <p id="rfc.section.6.3.5.p.1">The 204 (No Content) status code indicates that the server has successfully fulfilled the request and that there is no additional 1697 1828 content to return in the response payload body. Metadata in the response header fields refer to the target resource and its 1698 1829 current representation after the requested action. 1699 1830 </p> 1700 <p id="rfc.section. 5.3.5.p.2">For example, if a 204 status code is received in response to a PUT request and the response contains an <a href="p4-conditional.html#header.etag" class="smpl">ETag</a> header field, then the PUT was successful and the ETag field-value contains the entity-tag for the new representation of that1831 <p id="rfc.section.6.3.5.p.2">For example, if a 204 status code is received in response to a PUT request and the response contains an <a href="p4-conditional.html#header.etag" class="smpl">ETag</a> header field, then the PUT was successful and the ETag field-value contains the entity-tag for the new representation of that 1701 1832 target resource. 1702 1833 </p> 1703 <p id="rfc.section. 5.3.5.p.3">The 204 response allows a server to indicate that the action has been successfully applied to the target resource while implying1834 <p id="rfc.section.6.3.5.p.3">The 204 response allows a server to indicate that the action has been successfully applied to the target resource while implying 1704 1835 that the user agent <em class="bcp14">SHOULD NOT</em> traverse away from its current "document view" (if any). The server assumes that the user agent will provide some indication 1705 1836 of the success to its user, in accord with its own interface, and apply any new or updated metadata in the response to the 1706 1837 active representation. 1707 1838 </p> 1708 <p id="rfc.section. 5.3.5.p.4">For example, a 204 status code is commonly used with document editing interfaces corresponding to a "save" action, such that1839 <p id="rfc.section.6.3.5.p.4">For example, a 204 status code is commonly used with document editing interfaces corresponding to a "save" action, such that 1709 1840 the document being saved remains available to the user for editing. It is also frequently used with interfaces that expect 1710 1841 automated data transfers to be prevalent, such as within distributed version control systems. 1711 1842 </p> 1712 <p id="rfc.section. 5.3.5.p.5">The 204 response <em class="bcp14">MUST NOT</em> include a message body, and thus is always terminated by the first empty line after the header fields.1713 </p> 1714 <div id="rfc.iref.3 0"></div>1715 <div id="rfc.iref.s.1 1"></div>1716 <h3 id="rfc.section. 5.3.6"><a href="#rfc.section.5.3.6">5.3.6</a> <a id="status.205" href="#status.205">205 Reset Content</a></h3>1717 <p id="rfc.section. 5.3.6.p.1">The server has fulfilled the request and the user agent <em class="bcp14">SHOULD</em> reset the document view which caused the request to be sent. This response is primarily intended to allow input for actions1843 <p id="rfc.section.6.3.5.p.5">The 204 response <em class="bcp14">MUST NOT</em> include a message body, and thus is always terminated by the first empty line after the header fields. 1844 </p> 1845 <div id="rfc.iref.32"></div> 1846 <div id="rfc.iref.s.12"></div> 1847 <h3 id="rfc.section.6.3.6"><a href="#rfc.section.6.3.6">6.3.6</a> <a id="status.205" href="#status.205">205 Reset Content</a></h3> 1848 <p id="rfc.section.6.3.6.p.1">The server has fulfilled the request and the user agent <em class="bcp14">SHOULD</em> reset the document view which caused the request to be sent. This response is primarily intended to allow input for actions 1718 1849 to take place via user input, followed by a clearing of the form in which the input is given so that the user can easily initiate 1719 1850 another input action. 1720 1851 </p> 1721 <p id="rfc.section. 5.3.6.p.2">The message body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.17"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.1722 </p> 1723 <h2 id="rfc.section. 5.4"><a href="#rfc.section.5.4">5.4</a> <a id="status.3xx" href="#status.3xx">Redirection 3xx</a></h2>1724 <div id="rfc.iref.3 1"></div>1725 <div id="rfc.iref.s.1 2"></div>1726 <p id="rfc.section. 5.4.p.1">This class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request.1852 <p id="rfc.section.6.3.6.p.2">The message body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.19"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 1853 </p> 1854 <h2 id="rfc.section.6.4"><a href="#rfc.section.6.4">6.4</a> <a id="status.3xx" href="#status.3xx">Redirection 3xx</a></h2> 1855 <div id="rfc.iref.33"></div> 1856 <div id="rfc.iref.s.13"></div> 1857 <p id="rfc.section.6.4.p.1">This class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request. 1727 1858 If the required action involves a subsequent HTTP request, it <em class="bcp14">MAY</em> be carried out by the user agent without interaction with the user if and only if the method used in the second request is 1728 known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 3.2.1</a>.1729 </p> 1730 <p id="rfc.section. 5.4.p.2">There are several types of redirects: </p>1859 known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 4.2.1</a>. 1860 </p> 1861 <p id="rfc.section.6.4.p.2">There are several types of redirects: </p> 1731 1862 <ol> 1732 1863 <li> … … 1747 1878 <li> 1748 1879 <p>Other kinds of redirection, such as to a cached result (status code <a href="p4-conditional.html#status.304" class="smpl">304 1749 (Not Modified)</a>, see <a href="p4-conditional.html#status.304" title="304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4.1 1"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>).1880 (Not Modified)</a>, see <a href="p4-conditional.html#status.304" title="304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4.13"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). 1750 1881 </p> 1751 1882 </li> 1752 1883 </ol> 1753 <div class="note" id="rfc.section. 5.4.p.3">1884 <div class="note" id="rfc.section.6.4.p.3"> 1754 1885 <p> <b>Note:</b> In HTTP/1.0, only the status codes <a href="#status.301" class="smpl">301 (Moved Permanently)</a> and <a href="#status.302" class="smpl">302 (Found)</a> were defined for the first type of redirect, and the second type did not exist at all (<a href="#RFC1945" id="rfc.xref.RFC1945.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.0">[RFC1945]</cite></a>, <a href="http://tools.ietf.org/html/rfc1945#section-9.3">Section 9.3</a>). However it turned out that web forms using POST expected redirects to change the operation for the subsequent request to 1755 1886 retrieval (GET). To address this use case, HTTP/1.1 introduced the second type of redirect with the status code <a href="#status.303" class="smpl">303 (See Other)</a> (<a href="#RFC2068" id="rfc.xref.RFC2068.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2068]</cite></a>, <a href="http://tools.ietf.org/html/rfc2068#section-10.3.4">Section 10.3.4</a>). As user agents did not change their behavior to maintain backwards compatibility, the first revision of HTTP/1.1 added … … 1757 1888 </p> 1758 1889 </div> 1759 <p id="rfc.section. 5.4.p.4">A <a href="#header.location" class="smpl">Location</a> header field on a 3xx response indicates that a client <em class="bcp14">MAY</em> automatically redirect to the URI provided; see <a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 10.13</a>.1760 </p> 1761 <p id="rfc.section. 5.4.p.5">Note that for methods not known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 3.2.1</a>, automatic redirection needs to done with care, since the redirect might change the conditions under which the request was1890 <p id="rfc.section.6.4.p.4">A <a href="#header.location" class="smpl">Location</a> header field on a 3xx response indicates that a client <em class="bcp14">MAY</em> automatically redirect to the URI provided; see <a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 10.13</a>. 1891 </p> 1892 <p id="rfc.section.6.4.p.5">Note that for methods not known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 4.2.1</a>, automatic redirection needs to done with care, since the redirect might change the conditions under which the request was 1762 1893 issued. 1763 1894 </p> 1764 <p id="rfc.section. 5.4.p.6">Clients <em class="bcp14">SHOULD</em> detect and intervene in cyclical redirections (i.e., "infinite" redirection loops).1765 </p> 1766 <div class="note" id="rfc.section. 5.4.p.7">1895 <p id="rfc.section.6.4.p.6">Clients <em class="bcp14">SHOULD</em> detect and intervene in cyclical redirections (i.e., "infinite" redirection loops). 1896 </p> 1897 <div class="note" id="rfc.section.6.4.p.7"> 1767 1898 <p> <b>Note:</b> An earlier version of this specification recommended a maximum of five redirections (<a href="#RFC2068" id="rfc.xref.RFC2068.2"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2068]</cite></a>, <a href="http://tools.ietf.org/html/rfc2068#section-10.3">Section 10.3</a>). Content developers need to be aware that some clients might implement such a fixed limitation. 1768 1899 </p> 1769 1900 </div> 1770 <div id="rfc.iref.3 2"></div>1771 <div id="rfc.iref.s.1 3"></div>1772 <h3 id="rfc.section. 5.4.1"><a href="#rfc.section.5.4.1">5.4.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3>1773 <p id="rfc.section. 5.4.1.p.1">The target resource has more than one representation, each with its own specific location, and agent-driven negotiation information1901 <div id="rfc.iref.34"></div> 1902 <div id="rfc.iref.s.14"></div> 1903 <h3 id="rfc.section.6.4.1"><a href="#rfc.section.6.4.1">6.4.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3> 1904 <p id="rfc.section.6.4.1.p.1">The target resource has more than one representation, each with its own specific location, and agent-driven negotiation information 1774 1905 (<a href="#content.negotiation" title="Content Negotiation">Section 9</a>) is being provided so that the user (or user agent) can select a preferred representation by redirecting its request to that 1775 1906 location. 1776 1907 </p> 1777 <p id="rfc.section. 5.4.1.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of representation metadata and location(s) from which the user or user agent can1908 <p id="rfc.section.6.4.1.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of representation metadata and location(s) from which the user or user agent can 1778 1909 choose the one most appropriate. Depending upon the format and the capabilities of the user agent, selection of the most appropriate 1779 1910 choice <em class="bcp14">MAY</em> be performed automatically. However, this specification does not define any standard for such automatic selection. 1780 1911 </p> 1781 <p id="rfc.section. 5.4.1.p.3">If the server has a preferred choice of representation, it <em class="bcp14">SHOULD</em> include the specific URI for that representation in the <a href="#header.location" class="smpl">Location</a> field; user agents <em class="bcp14">MAY</em> use the Location field value for automatic redirection.1782 </p> 1783 <p id="rfc.section. 5.4.1.p.4">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.13"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 300 responses.1784 </p> 1785 <div id="rfc.iref.3 3"></div>1786 <div id="rfc.iref.s.1 4"></div>1787 <h3 id="rfc.section. 5.4.2"><a href="#rfc.section.5.4.2">5.4.2</a> <a id="status.301" href="#status.301">301 Moved Permanently</a></h3>1788 <p id="rfc.section. 5.4.2.p.1">The target resource has been assigned a new permanent URI and any future references to this resource <em class="bcp14">SHOULD</em> use one of the returned URIs. Clients with link editing capabilities ought to automatically re-link references to the effective1912 <p id="rfc.section.6.4.1.p.3">If the server has a preferred choice of representation, it <em class="bcp14">SHOULD</em> include the specific URI for that representation in the <a href="#header.location" class="smpl">Location</a> field; user agents <em class="bcp14">MAY</em> use the Location field value for automatic redirection. 1913 </p> 1914 <p id="rfc.section.6.4.1.p.4">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.14"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 300 responses. 1915 </p> 1916 <div id="rfc.iref.35"></div> 1917 <div id="rfc.iref.s.15"></div> 1918 <h3 id="rfc.section.6.4.2"><a href="#rfc.section.6.4.2">6.4.2</a> <a id="status.301" href="#status.301">301 Moved Permanently</a></h3> 1919 <p id="rfc.section.6.4.2.p.1">The target resource has been assigned a new permanent URI and any future references to this resource <em class="bcp14">SHOULD</em> use one of the returned URIs. Clients with link editing capabilities ought to automatically re-link references to the effective 1789 1920 request URI to one or more of the new references returned by the server, where possible. 1790 1921 </p> 1791 <p id="rfc.section. 5.4.2.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.14"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 301 responses.1792 </p> 1793 <p id="rfc.section. 5.4.2.p.3">The new permanent URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s).1794 </p> 1795 <div class="note" id="rfc.section. 5.4.2.p.4">1922 <p id="rfc.section.6.4.2.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.15"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 301 responses. 1923 </p> 1924 <p id="rfc.section.6.4.2.p.3">The new permanent URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s). 1925 </p> 1926 <div class="note" id="rfc.section.6.4.2.p.4"> 1796 1927 <p> <b>Note:</b> For historic reasons, user agents <em class="bcp14">MAY</em> change the request method from POST to GET for the subsequent request. If this behavior is undesired, status code <a href="#status.307" class="smpl">307 (Temporary Redirect)</a> can be used instead. 1797 1928 </p> 1798 1929 </div> 1799 <div id="rfc.iref.3 4"></div>1800 <div id="rfc.iref.s.1 5"></div>1801 <h3 id="rfc.section. 5.4.3"><a href="#rfc.section.5.4.3">5.4.3</a> <a id="status.302" href="#status.302">302 Found</a></h3>1802 <p id="rfc.section. 5.4.3.p.1">The target resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests.1803 </p> 1804 <p id="rfc.section. 5.4.3.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s).1805 </p> 1806 <div class="note" id="rfc.section. 5.4.3.p.3">1930 <div id="rfc.iref.36"></div> 1931 <div id="rfc.iref.s.16"></div> 1932 <h3 id="rfc.section.6.4.3"><a href="#rfc.section.6.4.3">6.4.3</a> <a id="status.302" href="#status.302">302 Found</a></h3> 1933 <p id="rfc.section.6.4.3.p.1">The target resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests. 1934 </p> 1935 <p id="rfc.section.6.4.3.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s). 1936 </p> 1937 <div class="note" id="rfc.section.6.4.3.p.3"> 1807 1938 <p> <b>Note:</b> For historic reasons, user agents <em class="bcp14">MAY</em> change the request method from POST to GET for the subsequent request. If this behavior is undesired, status code <a href="#status.307" class="smpl">307 (Temporary Redirect)</a> can be used instead. 1808 1939 </p> 1809 1940 </div> 1810 <div id="rfc.iref.3 5"></div>1811 <div id="rfc.iref.s.1 6"></div>1812 <h3 id="rfc.section. 5.4.4"><a href="#rfc.section.5.4.4">5.4.4</a> <a id="status.303" href="#status.303">303 See Other</a></h3>1813 <p id="rfc.section. 5.4.4.p.1">The 303 status code indicates that the server is redirecting the user agent to a different resource, as indicated by a URI1941 <div id="rfc.iref.37"></div> 1942 <div id="rfc.iref.s.17"></div> 1943 <h3 id="rfc.section.6.4.4"><a href="#rfc.section.6.4.4">6.4.4</a> <a id="status.303" href="#status.303">303 See Other</a></h3> 1944 <p id="rfc.section.6.4.4.p.1">The 303 status code indicates that the server is redirecting the user agent to a different resource, as indicated by a URI 1814 1945 in the <a href="#header.location" class="smpl">Location</a> header field, that is intended to provide an indirect response to the original request. In order to satisfy the original request, 1815 1946 a user agent <em class="bcp14">SHOULD</em> perform a retrieval request using the Location URI (a GET or HEAD request if using HTTP), which can itself be redirected further, … … 1817 1948 not considered equivalent to the effective request URI. 1818 1949 </p> 1819 <p id="rfc.section. 5.4.4.p.2">This status code is generally applicable to any HTTP method. It is primarily used to allow the output of a POST action to1950 <p id="rfc.section.6.4.4.p.2">This status code is generally applicable to any HTTP method. It is primarily used to allow the output of a POST action to 1820 1951 redirect the user agent to a selected resource, since doing so provides the information corresponding to the POST response 1821 1952 in a form that can be separately identified, bookmarked, and cached independent of the original request. 1822 1953 </p> 1823 <p id="rfc.section. 5.4.4.p.3">A 303 response to a GET request indicates that the requested resource does not have a representation of its own that can be1954 <p id="rfc.section.6.4.4.p.3">A 303 response to a GET request indicates that the requested resource does not have a representation of its own that can be 1824 1955 transferred by the server over HTTP. The <a href="#header.location" class="smpl">Location</a> URI indicates a resource that is descriptive of the target resource, such that the follow-on representation might be useful 1825 1956 to recipients without implying that it adequately represents the target resource. Note that answers to the questions of what … … 1827 1958 and thus entirely determined by the URI owner(s). 1828 1959 </p> 1829 <p id="rfc.section.5.4.4.p.4">Except for responses to a HEAD request, the representation of a 303 response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the <a href="#header.location" class="smpl">Location</a> URI. 1830 </p> 1831 <div id="rfc.iref.36"></div> 1832 <div id="rfc.iref.s.17"></div> 1833 <h3 id="rfc.section.5.4.5"><a href="#rfc.section.5.4.5">5.4.5</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3> 1834 <p id="rfc.section.5.4.5.p.1">The 305 status code was defined in a previous version of this specification (see <a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix C</a>), and is now deprecated. 1835 </p> 1836 <div id="rfc.iref.37"></div> 1960 <p id="rfc.section.6.4.4.p.4">Except for responses to a HEAD request, the representation of a 303 response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the <a href="#header.location" class="smpl">Location</a> URI. 1961 </p> 1962 <div id="rfc.iref.38"></div> 1837 1963 <div id="rfc.iref.s.18"></div> 1838 <h3 id="rfc.section.5.4.6"><a href="#rfc.section.5.4.6">5.4.6</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3> 1839 <p id="rfc.section.5.4.6.p.1">The 306 status code was used in a previous version of the specification, is no longer used, and the code is reserved.</p> 1840 <div id="rfc.iref.38"></div> 1964 <h3 id="rfc.section.6.4.5"><a href="#rfc.section.6.4.5">6.4.5</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3> 1965 <p id="rfc.section.6.4.5.p.1">The 305 status code was defined in a previous version of this specification (see <a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix C</a>), and is now deprecated. 1966 </p> 1967 <div id="rfc.iref.39"></div> 1841 1968 <div id="rfc.iref.s.19"></div> 1842 <h3 id="rfc.section.5.4.7"><a href="#rfc.section.5.4.7">5.4.7</a> <a id="status.307" href="#status.307">307 Temporary Redirect</a></h3> 1843 <p id="rfc.section.5.4.7.p.1">The target resource resides temporarily under a different URI. Since the redirection can change over time, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests. 1844 </p> 1845 <p id="rfc.section.5.4.7.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s). 1846 </p> 1847 <div class="note" id="rfc.section.5.4.7.p.3"> 1969 <h3 id="rfc.section.6.4.6"><a href="#rfc.section.6.4.6">6.4.6</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3> 1970 <p id="rfc.section.6.4.6.p.1">The 306 status code was used in a previous version of the specification, is no longer used, and the code is reserved.</p> 1971 <div id="rfc.iref.40"></div> 1972 <div id="rfc.iref.s.20"></div> 1973 <h3 id="rfc.section.6.4.7"><a href="#rfc.section.6.4.7">6.4.7</a> <a id="status.307" href="#status.307">307 Temporary Redirect</a></h3> 1974 <p id="rfc.section.6.4.7.p.1">The target resource resides temporarily under a different URI. Since the redirection can change over time, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests. 1975 </p> 1976 <p id="rfc.section.6.4.7.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s). 1977 </p> 1978 <div class="note" id="rfc.section.6.4.7.p.3"> 1848 1979 <p> <b>Note:</b> This status code is similar to <a href="#status.302" class="smpl">302 (Found)</a>, except that it does not allow rewriting the request method from POST to GET. This specification defines no equivalent counterpart 1849 1980 for <a href="#status.301" class="smpl">301 (Moved … … 1851 1982 </p> 1852 1983 </div> 1853 <h2 id="rfc.section. 5.5"><a href="#rfc.section.5.5">5.5</a> <a id="status.4xx" href="#status.4xx">Client Error 4xx</a></h2>1854 <div id="rfc.iref. 39"></div>1855 <div id="rfc.iref.s.2 0"></div>1856 <p id="rfc.section. 5.5.p.1">The 4xx class of status code is intended for cases in which the client seems to have erred. Except when responding to a HEAD1984 <h2 id="rfc.section.6.5"><a href="#rfc.section.6.5">6.5</a> <a id="status.4xx" href="#status.4xx">Client Error 4xx</a></h2> 1985 <div id="rfc.iref.41"></div> 1986 <div id="rfc.iref.s.21"></div> 1987 <p id="rfc.section.6.5.p.1">The 4xx class of status code is intended for cases in which the client seems to have erred. Except when responding to a HEAD 1857 1988 request, the server <em class="bcp14">SHOULD</em> include a representation containing an explanation of the error situation, and whether it is a temporary or permanent condition. 1858 1989 These status codes are applicable to any request method. User agents <em class="bcp14">SHOULD</em> display any included representation to the user. 1859 1990 </p> 1860 <div id="rfc.iref.40"></div> 1861 <div id="rfc.iref.s.21"></div> 1862 <h3 id="rfc.section.5.5.1"><a href="#rfc.section.5.5.1">5.5.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3> 1863 <p id="rfc.section.5.5.1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p> 1864 <div id="rfc.iref.41"></div> 1991 <div id="rfc.iref.42"></div> 1865 1992 <div id="rfc.iref.s.22"></div> 1866 <h3 id="rfc.section. 5.5.2"><a href="#rfc.section.5.5.2">5.5.2</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3>1867 <p id="rfc.section. 5.5.2.p.1">This code is reserved for future use.</p>1868 <div id="rfc.iref.4 2"></div>1993 <h3 id="rfc.section.6.5.1"><a href="#rfc.section.6.5.1">6.5.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3> 1994 <p id="rfc.section.6.5.1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p> 1995 <div id="rfc.iref.43"></div> 1869 1996 <div id="rfc.iref.s.23"></div> 1870 <h3 id="rfc.section.5.5.3"><a href="#rfc.section.5.5.3">5.5.3</a> <a id="status.403" href="#status.403">403 Forbidden</a></h3> 1871 <p id="rfc.section.5.5.3.p.1">The server understood the request, but refuses to authorize it. Providing different user authentication credentials might 1997 <h3 id="rfc.section.6.5.2"><a href="#rfc.section.6.5.2">6.5.2</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3> 1998 <p id="rfc.section.6.5.2.p.1">This code is reserved for future use.</p> 1999 <div id="rfc.iref.44"></div> 2000 <div id="rfc.iref.s.24"></div> 2001 <h3 id="rfc.section.6.5.3"><a href="#rfc.section.6.5.3">6.5.3</a> <a id="status.403" href="#status.403">403 Forbidden</a></h3> 2002 <p id="rfc.section.6.5.3.p.1">The server understood the request, but refuses to authorize it. Providing different user authentication credentials might 1872 2003 be successful, but any credentials that were provided in the request are insufficient. The request <em class="bcp14">SHOULD NOT</em> be repeated with the same credentials. 1873 2004 </p> 1874 <p id="rfc.section. 5.5.3.p.2">If the request method was not HEAD and the server wishes to make public why the request has not been fulfilled, it <em class="bcp14">SHOULD</em> describe the reason for the refusal in the representation. If the server does not wish to make this information available2005 <p id="rfc.section.6.5.3.p.2">If the request method was not HEAD and the server wishes to make public why the request has not been fulfilled, it <em class="bcp14">SHOULD</em> describe the reason for the refusal in the representation. If the server does not wish to make this information available 1875 2006 to the client, the status code <a href="#status.404" class="smpl">404 1876 2007 (Not Found)</a> <em class="bcp14">MAY</em> be used instead. 1877 2008 </p> 1878 <div id="rfc.iref.4 3"></div>1879 <div id="rfc.iref.s.2 4"></div>1880 <h3 id="rfc.section. 5.5.4"><a href="#rfc.section.5.5.4">5.5.4</a> <a id="status.404" href="#status.404">404 Not Found</a></h3>1881 <p id="rfc.section. 5.5.4.p.1">The server has not found anything matching the effective request URI. No indication is given of whether the condition is temporary2009 <div id="rfc.iref.45"></div> 2010 <div id="rfc.iref.s.25"></div> 2011 <h3 id="rfc.section.6.5.4"><a href="#rfc.section.6.5.4">6.5.4</a> <a id="status.404" href="#status.404">404 Not Found</a></h3> 2012 <p id="rfc.section.6.5.4.p.1">The server has not found anything matching the effective request URI. No indication is given of whether the condition is temporary 1882 2013 or permanent. The <a href="#status.410" class="smpl">410 (Gone)</a> status code <em class="bcp14">SHOULD</em> be used if the server knows, through some internally configurable mechanism, that an old resource is permanently unavailable 1883 2014 and has no forwarding address. This status code is commonly used when the server does not wish to reveal exactly why the request 1884 2015 has been refused, or when no other response is applicable. 1885 2016 </p> 1886 <div id="rfc.iref.44"></div> 1887 <div id="rfc.iref.s.25"></div> 1888 <h3 id="rfc.section.5.5.5"><a href="#rfc.section.5.5.5">5.5.5</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3> 1889 <p id="rfc.section.5.5.5.p.1">The method specified in the request-line is not allowed for the target resource. The response <em class="bcp14">MUST</em> include an <a href="#header.allow" class="smpl">Allow</a> header field containing a list of valid methods for the requested resource. 1890 </p> 1891 <div id="rfc.iref.45"></div> 2017 <div id="rfc.iref.46"></div> 1892 2018 <div id="rfc.iref.s.26"></div> 1893 <h3 id="rfc.section.5.5.6"><a href="#rfc.section.5.5.6">5.5.6</a> <a id="status.406" href="#status.406">406 Not Acceptable</a></h3> 1894 <p id="rfc.section.5.5.6.p.1">The resource identified by the request is only capable of generating response representations which have content characteristics 2019 <h3 id="rfc.section.6.5.5"><a href="#rfc.section.6.5.5">6.5.5</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3> 2020 <p id="rfc.section.6.5.5.p.1">The method specified in the request-line is not allowed for the target resource. The response <em class="bcp14">MUST</em> include an <a href="#header.allow" class="smpl">Allow</a> header field containing a list of valid methods for the requested resource. 2021 </p> 2022 <div id="rfc.iref.47"></div> 2023 <div id="rfc.iref.s.27"></div> 2024 <h3 id="rfc.section.6.5.6"><a href="#rfc.section.6.5.6">6.5.6</a> <a id="status.406" href="#status.406">406 Not Acceptable</a></h3> 2025 <p id="rfc.section.6.5.6.p.1">The resource identified by the request is only capable of generating response representations which have content characteristics 1895 2026 not acceptable according to the <a href="#header.accept" class="smpl">Accept</a> and Accept-* header fields sent in the request. 1896 2027 </p> 1897 <p id="rfc.section. 5.5.6.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of available representation characteristics and location(s) from which the user2028 <p id="rfc.section.6.5.6.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of available representation characteristics and location(s) from which the user 1898 2029 or user agent can choose the one most appropriate. Depending upon the format and the capabilities of the user agent, selection 1899 2030 of the most appropriate choice <em class="bcp14">MAY</em> be performed automatically. However, this specification does not define any standard for such automatic selection. 1900 2031 </p> 1901 <div class="note" id="rfc.section. 5.5.6.p.3">2032 <div class="note" id="rfc.section.6.5.6.p.3"> 1902 2033 <p> <b>Note:</b> HTTP/1.1 servers are allowed to return responses which are not acceptable according to the accept header fields sent in the 1903 2034 request. In some cases, this might even be preferable to sending a 406 response. User agents are encouraged to inspect the … … 1905 2036 </p> 1906 2037 </div> 1907 <p id="rfc.section.5.5.6.p.4">If the response could be unacceptable, a user agent <em class="bcp14">SHOULD</em> temporarily stop receipt of more data and query the user for a decision on further actions. 1908 </p> 1909 <div id="rfc.iref.46"></div> 1910 <div id="rfc.iref.s.27"></div> 1911 <h3 id="rfc.section.5.5.7"><a href="#rfc.section.5.5.7">5.5.7</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3> 1912 <p id="rfc.section.5.5.7.p.1">The client did not produce a request within the time that the server was prepared to wait. The client <em class="bcp14">MAY</em> repeat the request without modifications at any later time. 1913 </p> 1914 <div id="rfc.iref.47"></div> 2038 <p id="rfc.section.6.5.6.p.4">If the response could be unacceptable, a user agent <em class="bcp14">SHOULD</em> temporarily stop receipt of more data and query the user for a decision on further actions. 2039 </p> 2040 <div id="rfc.iref.48"></div> 1915 2041 <div id="rfc.iref.s.28"></div> 1916 <h3 id="rfc.section.5.5.8"><a href="#rfc.section.5.5.8">5.5.8</a> <a id="status.409" href="#status.409">409 Conflict</a></h3> 1917 <p id="rfc.section.5.5.8.p.1">The request could not be completed due to a conflict with the current state of the resource. This code is only allowed in 2042 <h3 id="rfc.section.6.5.7"><a href="#rfc.section.6.5.7">6.5.7</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3> 2043 <p id="rfc.section.6.5.7.p.1">The client did not produce a request within the time that the server was prepared to wait. The client <em class="bcp14">MAY</em> repeat the request without modifications at any later time. 2044 </p> 2045 <div id="rfc.iref.49"></div> 2046 <div id="rfc.iref.s.29"></div> 2047 <h3 id="rfc.section.6.5.8"><a href="#rfc.section.6.5.8">6.5.8</a> <a id="status.409" href="#status.409">409 Conflict</a></h3> 2048 <p id="rfc.section.6.5.8.p.1">The request could not be completed due to a conflict with the current state of the resource. This code is only allowed in 1918 2049 situations where it is expected that the user might be able to resolve the conflict and resubmit the request. The response 1919 2050 body <em class="bcp14">SHOULD</em> include enough information for the user to recognize the source of the conflict. Ideally, the response representation would 1920 2051 include enough information for the user or user agent to fix the problem; however, that might not be possible and is not required. 1921 2052 </p> 1922 <p id="rfc.section. 5.5.8.p.2">Conflicts are most likely to occur in response to a PUT request. For example, if versioning were being used and the representation2053 <p id="rfc.section.6.5.8.p.2">Conflicts are most likely to occur in response to a PUT request. For example, if versioning were being used and the representation 1923 2054 being PUT included changes to a resource which conflict with those made by an earlier (third-party) request, the server might 1924 2055 use the 409 response to indicate that it can't complete the request. In this case, the response representation would likely 1925 2056 contain a list of the differences between the two versions. 1926 2057 </p> 1927 <div id="rfc.iref. 48"></div>1928 <div id="rfc.iref.s. 29"></div>1929 <h3 id="rfc.section. 5.5.9"><a href="#rfc.section.5.5.9">5.5.9</a> <a id="status.410" href="#status.410">410 Gone</a></h3>1930 <p id="rfc.section. 5.5.9.p.1">The target resource is no longer available at the server and no forwarding address is known. This condition is expected to2058 <div id="rfc.iref.50"></div> 2059 <div id="rfc.iref.s.30"></div> 2060 <h3 id="rfc.section.6.5.9"><a href="#rfc.section.6.5.9">6.5.9</a> <a id="status.410" href="#status.410">410 Gone</a></h3> 2061 <p id="rfc.section.6.5.9.p.1">The target resource is no longer available at the server and no forwarding address is known. This condition is expected to 1931 2062 be considered permanent. Clients with link editing capabilities <em class="bcp14">SHOULD</em> delete references to the effective request URI after user approval. If the server does not know, or has no facility to determine, 1932 2063 whether or not the condition is permanent, the status code <a href="#status.404" class="smpl">404 (Not Found)</a> <em class="bcp14">SHOULD</em> be used instead. 1933 2064 </p> 1934 <p id="rfc.section. 5.5.9.p.2">The 410 response is primarily intended to assist the task of web maintenance by notifying the recipient that the resource2065 <p id="rfc.section.6.5.9.p.2">The 410 response is primarily intended to assist the task of web maintenance by notifying the recipient that the resource 1935 2066 is intentionally unavailable and that the server owners desire that remote links to that resource be removed. Such an event 1936 2067 is common for limited-time, promotional services and for resources belonging to individuals no longer working at the server's … … 1938 2069 — that is left to the discretion of the server owner. 1939 2070 </p> 1940 <p id="rfc.section. 5.5.9.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.15"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 410 responses.1941 </p> 1942 <div id="rfc.iref. 49"></div>1943 <div id="rfc.iref.s.3 0"></div>1944 <h3 id="rfc.section. 5.5.10"><a href="#rfc.section.5.5.10">5.5.10</a> <a id="status.411" href="#status.411">411 Length Required</a></h3>1945 <p id="rfc.section. 5.5.10.p.1">The server refuses to accept the request without a defined <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a>. The client <em class="bcp14">MAY</em> repeat the request if it adds a valid Content-Length header field containing the length of the message body in the request2071 <p id="rfc.section.6.5.9.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.16"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 410 responses. 2072 </p> 2073 <div id="rfc.iref.51"></div> 2074 <div id="rfc.iref.s.31"></div> 2075 <h3 id="rfc.section.6.5.10"><a href="#rfc.section.6.5.10">6.5.10</a> <a id="status.411" href="#status.411">411 Length Required</a></h3> 2076 <p id="rfc.section.6.5.10.p.1">The server refuses to accept the request without a defined <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a>. The client <em class="bcp14">MAY</em> repeat the request if it adds a valid Content-Length header field containing the length of the message body in the request 1946 2077 message. 1947 2078 </p> 1948 <div id="rfc.iref.5 0"></div>1949 <div id="rfc.iref.s.3 1"></div>1950 <h3 id="rfc.section. 5.5.11"><a href="#rfc.section.5.5.11">5.5.11</a> <a id="status.413" href="#status.413">413 Request Representation Too Large</a></h3>1951 <p id="rfc.section. 5.5.11.p.1">The server is refusing to process a request because the request representation is larger than the server is willing or able2079 <div id="rfc.iref.52"></div> 2080 <div id="rfc.iref.s.32"></div> 2081 <h3 id="rfc.section.6.5.11"><a href="#rfc.section.6.5.11">6.5.11</a> <a id="status.413" href="#status.413">413 Request Representation Too Large</a></h3> 2082 <p id="rfc.section.6.5.11.p.1">The server is refusing to process a request because the request representation is larger than the server is willing or able 1952 2083 to process. The server <em class="bcp14">MAY</em> close the connection to prevent the client from continuing the request. 1953 2084 </p> 1954 <p id="rfc.section. 5.5.11.p.2">If the condition is temporary, the server <em class="bcp14">SHOULD</em> include a <a href="#header.retry-after" class="smpl">Retry-After</a> header field to indicate that it is temporary and after what time the client <em class="bcp14">MAY</em> try again.1955 </p> 1956 <div id="rfc.iref.5 1"></div>1957 <div id="rfc.iref.s.3 2"></div>1958 <h3 id="rfc.section. 5.5.12"><a href="#rfc.section.5.5.12">5.5.12</a> <a id="status.414" href="#status.414">414 URI Too Long</a></h3>1959 <p id="rfc.section. 5.5.12.p.1">The server is refusing to service the request because the effective request URI is longer than the server is willing to interpret.2085 <p id="rfc.section.6.5.11.p.2">If the condition is temporary, the server <em class="bcp14">SHOULD</em> include a <a href="#header.retry-after" class="smpl">Retry-After</a> header field to indicate that it is temporary and after what time the client <em class="bcp14">MAY</em> try again. 2086 </p> 2087 <div id="rfc.iref.53"></div> 2088 <div id="rfc.iref.s.33"></div> 2089 <h3 id="rfc.section.6.5.12"><a href="#rfc.section.6.5.12">6.5.12</a> <a id="status.414" href="#status.414">414 URI Too Long</a></h3> 2090 <p id="rfc.section.6.5.12.p.1">The server is refusing to service the request because the effective request URI is longer than the server is willing to interpret. 1960 2091 This rare condition is only likely to occur when a client has improperly converted a POST request to a GET request with long 1961 2092 query information, when the client has descended into a URI "black hole" of redirection (e.g., a redirected URI prefix that … … 1963 2094 in some servers using fixed-length buffers for reading or manipulating the request-target. 1964 2095 </p> 1965 <div id="rfc.iref.5 2"></div>1966 <div id="rfc.iref.s.3 3"></div>1967 <h3 id="rfc.section. 5.5.13"><a href="#rfc.section.5.5.13">5.5.13</a> <a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3>1968 <p id="rfc.section. 5.5.13.p.1">The server is refusing to service the request because the request payload is in a format not supported by this request method2096 <div id="rfc.iref.54"></div> 2097 <div id="rfc.iref.s.34"></div> 2098 <h3 id="rfc.section.6.5.13"><a href="#rfc.section.6.5.13">6.5.13</a> <a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3> 2099 <p id="rfc.section.6.5.13.p.1">The server is refusing to service the request because the request payload is in a format not supported by this request method 1969 2100 on the target resource. 1970 2101 </p> 1971 <div id="rfc.iref.5 3"></div>1972 <div id="rfc.iref.s.3 4"></div>1973 <h3 id="rfc.section. 5.5.14"><a href="#rfc.section.5.5.14">5.5.14</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3>1974 <p id="rfc.section. 5.5.14.p.1">The expectation given in an <a href="#header.expect" class="smpl">Expect</a> header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 10.11</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could2102 <div id="rfc.iref.55"></div> 2103 <div id="rfc.iref.s.35"></div> 2104 <h3 id="rfc.section.6.5.14"><a href="#rfc.section.6.5.14">6.5.14</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3> 2105 <p id="rfc.section.6.5.14.p.1">The expectation given in an <a href="#header.expect" class="smpl">Expect</a> header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 10.11</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could 1975 2106 not be met by the next-hop server. 1976 2107 </p> 1977 <div id="rfc.iref.5 4"></div>1978 <div id="rfc.iref.s.3 5"></div>1979 <h3 id="rfc.section. 5.5.15"><a href="#rfc.section.5.5.15">5.5.15</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3>1980 <p id="rfc.section. 5.5.15.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.4</a> of <a href="#Part1" id="rfc.xref.Part1.18"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) specifying the required protocols.1981 </p> 1982 <div id="rfc.figure.u. 4"></div>2108 <div id="rfc.iref.56"></div> 2109 <div id="rfc.iref.s.36"></div> 2110 <h3 id="rfc.section.6.5.15"><a href="#rfc.section.6.5.15">6.5.15</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3> 2111 <p id="rfc.section.6.5.15.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.4</a> of <a href="#Part1" id="rfc.xref.Part1.20"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) specifying the required protocols. 2112 </p> 2113 <div id="rfc.figure.u.5"></div> 1983 2114 <p>Example:</p> <pre class="text">HTTP/1.1 426 Upgrade Required 1984 2115 Upgrade: HTTP/3.0 … … 1988 2119 1989 2120 <span id="s426body">This service requires use of the HTTP/3.0 protocol. 1990 </span></pre><p id="rfc.section. 5.5.15.p.3">The server <em class="bcp14">SHOULD</em> include a message body in the 426 response which indicates in human readable form the reason for the error and describes any2121 </span></pre><p id="rfc.section.6.5.15.p.3">The server <em class="bcp14">SHOULD</em> include a message body in the 426 response which indicates in human readable form the reason for the error and describes any 1991 2122 alternative courses which might be available to the user. 1992 2123 </p> 1993 <h2 id="rfc.section. 5.6"><a href="#rfc.section.5.6">5.6</a> <a id="status.5xx" href="#status.5xx">Server Error 5xx</a></h2>1994 <div id="rfc.iref.5 5"></div>1995 <div id="rfc.iref.s.3 6"></div>1996 <p id="rfc.section. 5.6.p.1">Response status codes beginning with the digit "5" indicate cases in which the server is aware that it has erred or is incapable2124 <h2 id="rfc.section.6.6"><a href="#rfc.section.6.6">6.6</a> <a id="status.5xx" href="#status.5xx">Server Error 5xx</a></h2> 2125 <div id="rfc.iref.57"></div> 2126 <div id="rfc.iref.s.37"></div> 2127 <p id="rfc.section.6.6.p.1">Response status codes beginning with the digit "5" indicate cases in which the server is aware that it has erred or is incapable 1997 2128 of performing the request. Except when responding to a HEAD request, the server <em class="bcp14">SHOULD</em> include a representation containing an explanation of the error situation, and whether it is a temporary or permanent condition. 1998 2129 User agents <em class="bcp14">SHOULD</em> display any included representation to the user. These response codes are applicable to any request method. 1999 2130 </p> 2000 <div id="rfc.iref.56"></div> 2001 <div id="rfc.iref.s.37"></div> 2002 <h3 id="rfc.section.5.6.1"><a href="#rfc.section.5.6.1">5.6.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3> 2003 <p id="rfc.section.5.6.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p> 2004 <div id="rfc.iref.57"></div> 2131 <div id="rfc.iref.58"></div> 2005 2132 <div id="rfc.iref.s.38"></div> 2006 <h3 id="rfc.section.5.6.2"><a href="#rfc.section.5.6.2">5.6.2</a> <a id="status.501" href="#status.501">501 Not Implemented</a></h3> 2007 <p id="rfc.section.5.6.2.p.1">The server does not support the functionality required to fulfill the request. This is the appropriate response when the server 2133 <h3 id="rfc.section.6.6.1"><a href="#rfc.section.6.6.1">6.6.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3> 2134 <p id="rfc.section.6.6.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p> 2135 <div id="rfc.iref.59"></div> 2136 <div id="rfc.iref.s.39"></div> 2137 <h3 id="rfc.section.6.6.2"><a href="#rfc.section.6.6.2">6.6.2</a> <a id="status.501" href="#status.501">501 Not Implemented</a></h3> 2138 <p id="rfc.section.6.6.2.p.1">The server does not support the functionality required to fulfill the request. This is the appropriate response when the server 2008 2139 does not recognize the request method and is not capable of supporting it for any resource. 2009 2140 </p> 2010 <div id="rfc.iref. 58"></div>2011 <div id="rfc.iref.s. 39"></div>2012 <h3 id="rfc.section. 5.6.3"><a href="#rfc.section.5.6.3">5.6.3</a> <a id="status.502" href="#status.502">502 Bad Gateway</a></h3>2013 <p id="rfc.section. 5.6.3.p.1">The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting2141 <div id="rfc.iref.60"></div> 2142 <div id="rfc.iref.s.40"></div> 2143 <h3 id="rfc.section.6.6.3"><a href="#rfc.section.6.6.3">6.6.3</a> <a id="status.502" href="#status.502">502 Bad Gateway</a></h3> 2144 <p id="rfc.section.6.6.3.p.1">The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting 2014 2145 to fulfill the request. 2015 2146 </p> 2016 <div id="rfc.iref. 59"></div>2017 <div id="rfc.iref.s.4 0"></div>2018 <h3 id="rfc.section. 5.6.4"><a href="#rfc.section.5.6.4">5.6.4</a> <a id="status.503" href="#status.503">503 Service Unavailable</a></h3>2019 <p id="rfc.section. 5.6.4.p.1">The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.</p>2020 <p id="rfc.section. 5.6.4.p.2">The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the2147 <div id="rfc.iref.61"></div> 2148 <div id="rfc.iref.s.41"></div> 2149 <h3 id="rfc.section.6.6.4"><a href="#rfc.section.6.6.4">6.6.4</a> <a id="status.503" href="#status.503">503 Service Unavailable</a></h3> 2150 <p id="rfc.section.6.6.4.p.1">The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.</p> 2151 <p id="rfc.section.6.6.4.p.2">The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the 2021 2152 delay <em class="bcp14">MAY</em> be indicated in a <a href="#header.retry-after" class="smpl">Retry-After</a> header field (<a href="#header.retry-after" id="rfc.xref.header.retry-after.2" title="Retry-After">Section 10.16</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a <a href="#status.500" class="smpl">500 (Internal 2022 2153 Server Error)</a> response. 2023 2154 </p> 2024 <div class="note" id="rfc.section. 5.6.4.p.3">2155 <div class="note" id="rfc.section.6.6.4.p.3"> 2025 2156 <p> <b>Note:</b> The existence of the 503 status code does not imply that a server has to use it when becoming overloaded. Some servers might 2026 2157 wish to simply refuse the connection. 2027 2158 </p> 2028 2159 </div> 2029 <div id="rfc.iref.6 0"></div>2030 <div id="rfc.iref.s.4 1"></div>2031 <h3 id="rfc.section. 5.6.5"><a href="#rfc.section.5.6.5">5.6.5</a> <a id="status.504" href="#status.504">504 Gateway Timeout</a></h3>2032 <p id="rfc.section. 5.6.5.p.1">The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the2160 <div id="rfc.iref.62"></div> 2161 <div id="rfc.iref.s.42"></div> 2162 <h3 id="rfc.section.6.6.5"><a href="#rfc.section.6.6.5">6.6.5</a> <a id="status.504" href="#status.504">504 Gateway Timeout</a></h3> 2163 <p id="rfc.section.6.6.5.p.1">The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the 2033 2164 URI (e.g., HTTP, FTP, LDAP) or some other auxiliary server (e.g., DNS) it needed to access in attempting to complete the request. 2034 2165 </p> 2035 <div class="note" id="rfc.section. 5.6.5.p.2">2166 <div class="note" id="rfc.section.6.6.5.p.2"> 2036 2167 <p> <b>Note</b> to implementers: some deployed proxies are known to return <a href="#status.400" class="smpl">400 (Bad Request)</a> or <a href="#status.500" class="smpl">500 (Internal Server 2037 2168 Error)</a> when DNS lookups time out. 2038 2169 </p> 2039 2170 </div> 2040 <div id="rfc.iref.6 1"></div>2041 <div id="rfc.iref.s.4 2"></div>2042 <h3 id="rfc.section. 5.6.6"><a href="#rfc.section.5.6.6">5.6.6</a> <a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3>2043 <p id="rfc.section. 5.6.6.p.1">The server does not support, or refuses to support, the protocol version that was used in the request message. The server2171 <div id="rfc.iref.63"></div> 2172 <div id="rfc.iref.s.43"></div> 2173 <h3 id="rfc.section.6.6.6"><a href="#rfc.section.6.6.6">6.6.6</a> <a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3> 2174 <p id="rfc.section.6.6.6.p.1">The server does not support, or refuses to support, the protocol version that was used in the request message. The server 2044 2175 is indicating that it is unable or unwilling to complete the request using the same major version as the client, as described 2045 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1. 19"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>, other than with this error message. The response <em class="bcp14">SHOULD</em> contain a representation describing why that version is not supported and what other protocols are supported by that server.2046 </p> 2047 <h1 id="rfc.section. 6"><a href="#rfc.section.6">6.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1>2048 <h2 id="rfc.section. 6.1"><a href="#rfc.section.6.1">6.1</a> <a id="http.date" href="#http.date">Date/Time Formats</a></h2>2049 <p id="rfc.section. 6.1.p.1">HTTP applications have historically allowed three different formats for date/time stamps. However, the preferred format is2176 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>, other than with this error message. The response <em class="bcp14">SHOULD</em> contain a representation describing why that version is not supported and what other protocols are supported by that server. 2177 </p> 2178 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> 2179 <h2 id="rfc.section.7.1"><a href="#rfc.section.7.1">7.1</a> <a id="http.date" href="#http.date">Date/Time Formats</a></h2> 2180 <p id="rfc.section.7.1.p.1">HTTP applications have historically allowed three different formats for date/time stamps. However, the preferred format is 2050 2181 a fixed-length subset of that defined by <a href="#RFC1123" id="rfc.xref.RFC1123.1"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a>: 2051 2182 </p> 2052 <div id="rfc.figure.u. 5"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 11232053 </pre><p id="rfc.section. 6.1.p.3">The other formats are described here only for compatibility with obsolete implementations.</p>2054 <div id="rfc.figure.u. 6"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format2183 <div id="rfc.figure.u.6"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 2184 </pre><p id="rfc.section.7.1.p.3">The other formats are described here only for compatibility with obsolete implementations.</p> 2185 <div id="rfc.figure.u.7"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 2055 2186 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format 2056 </pre><p id="rfc.section. 6.1.p.5">HTTP/1.1 clients and servers that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0), though they <em class="bcp14">MUST</em> only generate the RFC 1123 format for representing HTTP-date values in header fields.2057 </p> 2058 <p id="rfc.section. 6.1.p.6">All HTTP date/time stamps <em class="bcp14">MUST</em> be represented in Greenwich Mean Time (GMT), without exception. For the purposes of HTTP, GMT is exactly equal to UTC (Coordinated2187 </pre><p id="rfc.section.7.1.p.5">HTTP/1.1 clients and servers that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0), though they <em class="bcp14">MUST</em> only generate the RFC 1123 format for representing HTTP-date values in header fields. 2188 </p> 2189 <p id="rfc.section.7.1.p.6">All HTTP date/time stamps <em class="bcp14">MUST</em> be represented in Greenwich Mean Time (GMT), without exception. For the purposes of HTTP, GMT is exactly equal to UTC (Coordinated 2059 2190 Universal Time). This is indicated in the first two formats by the inclusion of "GMT" as the three-letter abbreviation for 2060 2191 time zone, and <em class="bcp14">MUST</em> be assumed when reading the asctime format. HTTP-date is case sensitive and <em class="bcp14">MUST NOT</em> include additional whitespace beyond that specifically included as SP in the grammar. 2061 2192 </p> 2062 <div id="rfc.figure.u. 7"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a>2193 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a> 2063 2194 </pre><div id="preferred.date.format"> 2064 <p id="rfc.section. 6.1.p.8"> Preferred format:</p>2195 <p id="rfc.section.7.1.p.8"> Preferred format:</p> 2065 2196 </div> 2066 <div id="rfc.figure.u. 8"></div><pre class="inline"><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><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#imported.abnf" class="smpl">SP</a> date1 <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2197 <div id="rfc.figure.u.9"></div><pre class="inline"><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><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#imported.abnf" class="smpl">SP</a> date1 <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2067 2198 ; fixed length subset of the format defined in 2068 2199 ; <a href="http://tools.ietf.org/html/rfc1123#section-5.2.14">Section 5.2.14</a> of <a href="#RFC1123" id="rfc.xref.RFC1123.2"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a> … … 2102 2233 <a href="#preferred.date.format" class="smpl">minute</a> = 2<a href="#imported.abnf" class="smpl">DIGIT</a> 2103 2234 <a href="#preferred.date.format" class="smpl">second</a> = 2<a href="#imported.abnf" class="smpl">DIGIT</a> 2104 </pre><p id="rfc.section. 6.1.p.10">The semantics of <a href="#preferred.date.format" class="smpl">day-name</a>, <a href="#preferred.date.format" class="smpl">day</a>, <a href="#preferred.date.format" class="smpl">month</a>, <a href="#preferred.date.format" class="smpl">year</a>, and <a href="#preferred.date.format" class="smpl">time-of-day</a> are the same as those defined for the RFC 5322 constructs with the corresponding name (<a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>).2235 </pre><p id="rfc.section.7.1.p.10">The semantics of <a href="#preferred.date.format" class="smpl">day-name</a>, <a href="#preferred.date.format" class="smpl">day</a>, <a href="#preferred.date.format" class="smpl">month</a>, <a href="#preferred.date.format" class="smpl">year</a>, and <a href="#preferred.date.format" class="smpl">time-of-day</a> are the same as those defined for the RFC 5322 constructs with the corresponding name (<a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>). 2105 2236 </p> 2106 2237 <div id="obsolete.date.formats"> 2107 <p id="rfc.section. 6.1.p.11"> Obsolete formats:</p>2238 <p id="rfc.section.7.1.p.11"> Obsolete formats:</p> 2108 2239 </div> 2109 <div id="rfc.figure.u. 9"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a>2110 </pre><div id="rfc.figure.u.1 0"></div><pre class="inline"><span id="rfc.iref.g.17"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2240 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a> 2241 </pre><div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.17"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2111 2242 <a href="#obsolete.date.formats" class="smpl">date2</a> = <a href="#preferred.date.format" class="smpl">day</a> "-" <a href="#preferred.date.format" class="smpl">month</a> "-" 2<a href="#imported.abnf" class="smpl">DIGIT</a> 2112 2243 ; day-month-year (e.g., 02-Jun-82) … … 2119 2250 / %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 2120 2251 / %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 2121 </pre><div id="rfc.figure.u.1 1"></div><pre class="inline"><span id="rfc.iref.g.18"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>2252 </pre><div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.18"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 2122 2253 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#imported.abnf" class="smpl">SP</a> ( 2<a href="#imported.abnf" class="smpl">DIGIT</a> / ( <a href="#imported.abnf" class="smpl">SP</a> 1<a href="#imported.abnf" class="smpl">DIGIT</a> )) 2123 2254 ; month day (e.g., Jun 2) 2124 </pre><div class="note" id="rfc.section. 6.1.p.15">2255 </pre><div class="note" id="rfc.section.7.1.p.15"> 2125 2256 <p> <b>Note:</b> Recipients of date values are encouraged to be robust in accepting date values that might have been sent by non-HTTP applications, 2126 2257 as is sometimes the case when retrieving or posting messages via proxies/gateways to SMTP or NNTP. 2127 2258 </p> 2128 2259 </div> 2129 <div class="note" id="rfc.section. 6.1.p.16">2260 <div class="note" id="rfc.section.7.1.p.16"> 2130 2261 <p> <b>Note:</b> HTTP requirements for the date/time stamp format apply only to their usage within the protocol stream. Clients and servers 2131 2262 are not required to use these formats for user presentation, request logging, etc. 2132 2263 </p> 2133 2264 </div> 2134 <h2 id="rfc.section. 6.2"><a href="#rfc.section.6.2">6.2</a> <a id="product.tokens" href="#product.tokens">Product Tokens</a></h2>2135 <p id="rfc.section. 6.2.p.1">Product tokens are used to allow communicating applications to identify themselves by software name and version. Most fields2265 <h2 id="rfc.section.7.2"><a href="#rfc.section.7.2">7.2</a> <a id="product.tokens" href="#product.tokens">Product Tokens</a></h2> 2266 <p id="rfc.section.7.2.p.1">Product tokens are used to allow communicating applications to identify themselves by software name and version. Most fields 2136 2267 using product tokens also allow sub-products which form a significant part of the application to be listed, separated by whitespace. 2137 2268 By convention, the products are listed in order of their significance for identifying the application. 2138 2269 </p> 2139 <div id="rfc.figure.u.1 2"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#imported.abnf" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>]2270 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#imported.abnf" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 2140 2271 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#imported.abnf" class="smpl">token</a> 2141 </pre><p id="rfc.section. 6.2.p.3">Examples:</p>2142 <div id="rfc.figure.u.1 3"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b32272 </pre><p id="rfc.section.7.2.p.3">Examples:</p> 2273 <div id="rfc.figure.u.14"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2143 2274 Server: Apache/0.8.4 2144 </pre><p id="rfc.section. 6.2.p.5">Product tokens <em class="bcp14">SHOULD</em> be short and to the point. They <em class="bcp14">MUST NOT</em> be used for advertising or other non-essential information. Although any token octet <em class="bcp14">MAY</em> appear in a product-version, this token <em class="bcp14">SHOULD</em> only be used for a version identifier (i.e., successive versions of the same product <em class="bcp14">SHOULD</em> only differ in the product-version portion of the product value).2145 </p> 2146 <h2 id="rfc.section. 6.3"><a href="#rfc.section.6.3">6.3</a> <a id="character.sets" href="#character.sets">Character Encodings (charset)</a></h2>2147 <p id="rfc.section. 6.3.p.1">HTTP uses charset names to indicate the character encoding of a textual representation.</p>2275 </pre><p id="rfc.section.7.2.p.5">Product tokens <em class="bcp14">SHOULD</em> be short and to the point. They <em class="bcp14">MUST NOT</em> be used for advertising or other non-essential information. Although any token octet <em class="bcp14">MAY</em> appear in a product-version, this token <em class="bcp14">SHOULD</em> only be used for a version identifier (i.e., successive versions of the same product <em class="bcp14">SHOULD</em> only differ in the product-version portion of the product value). 2276 </p> 2277 <h2 id="rfc.section.7.3"><a href="#rfc.section.7.3">7.3</a> <a id="character.sets" href="#character.sets">Character Encodings (charset)</a></h2> 2278 <p id="rfc.section.7.3.p.1">HTTP uses charset names to indicate the character encoding of a textual representation.</p> 2148 2279 <div id="rule.charset"> 2149 <p id="rfc.section. 6.3.p.2"> A character encoding is identified by a case-insensitive token. The complete set of tokens is defined by the IANA Character2280 <p id="rfc.section.7.3.p.2"> A character encoding is identified by a case-insensitive token. The complete set of tokens is defined by the IANA Character 2150 2281 Set registry (<<a href="http://www.iana.org/assignments/character-sets">http://www.iana.org/assignments/character-sets</a>>). 2151 2282 </p> 2152 2283 </div> 2153 <div id="rfc.figure.u.1 4"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#rule.charset" class="smpl">charset</a> = <a href="#imported.abnf" class="smpl">token</a>2154 </pre><p id="rfc.section. 6.3.p.4">Although HTTP allows an arbitrary token to be used as a charset value, any token that has a predefined value within the IANA2284 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#rule.charset" class="smpl">charset</a> = <a href="#imported.abnf" class="smpl">token</a> 2285 </pre><p id="rfc.section.7.3.p.4">Although HTTP allows an arbitrary token to be used as a charset value, any token that has a predefined value within the IANA 2155 2286 Character Set registry <em class="bcp14">MUST</em> represent the character encoding defined by that registry. Applications <em class="bcp14">SHOULD</em> limit their use of character encodings to those defined within the IANA registry. 2156 2287 </p> 2157 <p id="rfc.section. 6.3.p.5">HTTP uses charset in two contexts: within an <a href="#header.accept-charset" class="smpl">Accept-Charset</a> request header field (in which the charset value is an unquoted token) and as the value of a parameter in a <a href="#header.content-type" class="smpl">Content-Type</a> header field (within a request or response), in which case the parameter value of the charset parameter can be quoted.2158 </p> 2159 <p id="rfc.section. 6.3.p.6">Implementers need to be aware of IETF character set requirements <a href="#RFC3629" id="rfc.xref.RFC3629.1"><cite title="UTF-8, a transformation format of ISO 10646">[RFC3629]</cite></a> <a href="#RFC2277" id="rfc.xref.RFC2277.1"><cite title="IETF Policy on Character Sets and Languages">[RFC2277]</cite></a>.2160 </p> 2161 <h2 id="rfc.section. 6.4"><a href="#rfc.section.6.4">6.4</a> <a id="content.codings" href="#content.codings">Content Codings</a></h2>2162 <p id="rfc.section. 6.4.p.1">Content coding values indicate an encoding transformation that has been or can be applied to a representation. Content codings2288 <p id="rfc.section.7.3.p.5">HTTP uses charset in two contexts: within an <a href="#header.accept-charset" class="smpl">Accept-Charset</a> request header field (in which the charset value is an unquoted token) and as the value of a parameter in a <a href="#header.content-type" class="smpl">Content-Type</a> header field (within a request or response), in which case the parameter value of the charset parameter can be quoted. 2289 </p> 2290 <p id="rfc.section.7.3.p.6">Implementers need to be aware of IETF character set requirements <a href="#RFC3629" id="rfc.xref.RFC3629.1"><cite title="UTF-8, a transformation format of ISO 10646">[RFC3629]</cite></a> <a href="#RFC2277" id="rfc.xref.RFC2277.1"><cite title="IETF Policy on Character Sets and Languages">[RFC2277]</cite></a>. 2291 </p> 2292 <h2 id="rfc.section.7.4"><a href="#rfc.section.7.4">7.4</a> <a id="content.codings" href="#content.codings">Content Codings</a></h2> 2293 <p id="rfc.section.7.4.p.1">Content coding values indicate an encoding transformation that has been or can be applied to a representation. Content codings 2163 2294 are primarily used to allow a representation to be compressed or otherwise usefully transformed without losing the identity 2164 2295 of its underlying media type and without loss of information. Frequently, the representation is stored in coded form, transmitted 2165 2296 directly, and only decoded by the recipient. 2166 2297 </p> 2167 <div id="rfc.figure.u.1 5"></div><pre class="inline"><span id="rfc.iref.g.22"></span> <a href="#content.codings" class="smpl">content-coding</a> = <a href="#imported.abnf" class="smpl">token</a>2168 </pre><p id="rfc.section. 6.4.p.3">All content-coding values are case-insensitive. HTTP/1.1 uses content-coding values in the <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.2" title="Accept-Encoding">Section 10.3</a>) and <a href="#header.content-encoding" class="smpl">Content-Encoding</a> (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.1" title="Content-Encoding">Section 10.6</a>) header fields. Although the value describes the content-coding, what is more important is that it indicates what decoding2298 <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.22"></span> <a href="#content.codings" class="smpl">content-coding</a> = <a href="#imported.abnf" class="smpl">token</a> 2299 </pre><p id="rfc.section.7.4.p.3">All content-coding values are case-insensitive. HTTP/1.1 uses content-coding values in the <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.2" title="Accept-Encoding">Section 10.3</a>) and <a href="#header.content-encoding" class="smpl">Content-Encoding</a> (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.2" title="Content-Encoding">Section 10.6</a>) header fields. Although the value describes the content-coding, what is more important is that it indicates what decoding 2169 2300 mechanism will be required to remove the encoding. 2170 2301 </p> 2171 <p id="rfc.section. 6.4.p.4">compress<span id="rfc.iref.c.4"></span><span id="rfc.iref.c.5"></span>2302 <p id="rfc.section.7.4.p.4">compress<span id="rfc.iref.c.4"></span><span id="rfc.iref.c.5"></span> 2172 2303 </p> 2173 2304 <ul class="empty"> 2174 <li>See <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.2 0"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.2175 </li> 2176 </ul> 2177 <p id="rfc.section. 6.4.p.5">deflate<span id="rfc.iref.d.2"></span><span id="rfc.iref.c.6"></span>2305 <li>See <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.22"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 2306 </li> 2307 </ul> 2308 <p id="rfc.section.7.4.p.5">deflate<span id="rfc.iref.d.2"></span><span id="rfc.iref.c.6"></span> 2178 2309 </p> 2179 2310 <ul class="empty"> 2180 <li>See <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1.2 1"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.2181 </li> 2182 </ul> 2183 <p id="rfc.section. 6.4.p.6">gzip<span id="rfc.iref.g.23"></span><span id="rfc.iref.c.7"></span>2311 <li>See <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 2312 </li> 2313 </ul> 2314 <p id="rfc.section.7.4.p.6">gzip<span id="rfc.iref.g.23"></span><span id="rfc.iref.c.7"></span> 2184 2315 </p> 2185 2316 <ul class="empty"> 2186 <li>See <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.2 2"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.2187 </li> 2188 </ul> 2189 <h2 id="rfc.section. 6.5"><a href="#rfc.section.6.5">6.5</a> <a id="media.types" href="#media.types">Media Types</a></h2>2190 <p id="rfc.section. 6.5.p.1">HTTP uses Internet Media Types <a href="#RFC2046" id="rfc.xref.RFC2046.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> in the <a href="#header.content-type" class="smpl">Content-Type</a> (<a href="#header.content-type" id="rfc.xref.header.content-type.2" title="Content-Type">Section 10.9</a>) and <a href="#header.accept" class="smpl">Accept</a> (<a href="#header.accept" id="rfc.xref.header.accept.2" title="Accept">Section 10.1</a>) header fields in order to provide open and extensible data typing and type negotiation.2191 </p> 2192 <div id="rfc.figure.u.1 6"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span> <a href="#media.types" class="smpl">media-type</a> = <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> *( <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> )2317 <li>See <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 2318 </li> 2319 </ul> 2320 <h2 id="rfc.section.7.5"><a href="#rfc.section.7.5">7.5</a> <a id="media.types" href="#media.types">Media Types</a></h2> 2321 <p id="rfc.section.7.5.p.1">HTTP uses Internet Media Types <a href="#RFC2046" id="rfc.xref.RFC2046.2"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> in the <a href="#header.content-type" class="smpl">Content-Type</a> (<a href="#header.content-type" id="rfc.xref.header.content-type.3" title="Content-Type">Section 10.9</a>) and <a href="#header.accept" class="smpl">Accept</a> (<a href="#header.accept" id="rfc.xref.header.accept.2" title="Accept">Section 10.1</a>) header fields in order to provide open and extensible data typing and type negotiation. 2322 </p> 2323 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span> <a href="#media.types" class="smpl">media-type</a> = <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> *( <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> ) 2193 2324 <a href="#media.types" class="smpl">type</a> = <a href="#imported.abnf" class="smpl">token</a> 2194 2325 <a href="#media.types" class="smpl">subtype</a> = <a href="#imported.abnf" class="smpl">token</a> 2195 2326 </pre><div id="rule.parameter"> 2196 <p id="rfc.section. 6.5.p.3"> The type/subtype <em class="bcp14">MAY</em> be followed by parameters in the form of attribute/value pairs.2327 <p id="rfc.section.7.5.p.3"> The type/subtype <em class="bcp14">MAY</em> be followed by parameters in the form of attribute/value pairs. 2197 2328 </p> 2198 2329 </div> 2199 <div id="rfc.figure.u.1 7"></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> <a href="#rule.parameter" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a>2330 <div id="rfc.figure.u.18"></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> <a href="#rule.parameter" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a> 2200 2331 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#imported.abnf" class="smpl">token</a> 2201 2332 <a href="#rule.parameter" class="smpl">value</a> = <a href="#imported.abnf" class="smpl">word</a> 2202 </pre><p id="rfc.section. 6.5.p.5">The type, subtype, and parameter attribute names are case-insensitive. Parameter values might or might not be case-sensitive,2333 </pre><p id="rfc.section.7.5.p.5">The type, subtype, and parameter attribute names are case-insensitive. Parameter values might or might not be case-sensitive, 2203 2334 depending on the semantics of the parameter name. The presence or absence of a parameter might be significant to the processing 2204 2335 of a media-type, depending on its definition within the media type registry. 2205 2336 </p> 2206 <p id="rfc.section. 6.5.p.6">A parameter value that matches the <a href="#imported.abnf" class="smpl">token</a> production can be transmitted as either a token or within a quoted-string. The quoted and unquoted values are equivalent.2207 </p> 2208 <p id="rfc.section. 6.5.p.7">Note that some older HTTP applications do not recognize media type parameters. When sending data to older HTTP applications,2337 <p id="rfc.section.7.5.p.6">A parameter value that matches the <a href="#imported.abnf" class="smpl">token</a> production can be transmitted as either a token or within a quoted-string. The quoted and unquoted values are equivalent. 2338 </p> 2339 <p id="rfc.section.7.5.p.7">Note that some older HTTP applications do not recognize media type parameters. When sending data to older HTTP applications, 2209 2340 implementations <em class="bcp14">SHOULD</em> only use media type parameters when they are required by that type/subtype definition. 2210 2341 </p> 2211 <p id="rfc.section. 6.5.p.8">Media-type values are registered with the Internet Assigned Number Authority (IANA). The media type registration process is2342 <p id="rfc.section.7.5.p.8">Media-type values are registered with the Internet Assigned Number Authority (IANA). The media type registration process is 2212 2343 outlined in <a href="#RFC4288" id="rfc.xref.RFC4288.1"><cite title="Media Type Specifications and Registration Procedures">[RFC4288]</cite></a>. Use of non-registered media types is discouraged. 2213 2344 </p> 2214 <h3 id="rfc.section. 6.5.1"><a href="#rfc.section.6.5.1">6.5.1</a> <a id="canonicalization.and.text.defaults" href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></h3>2215 <p id="rfc.section. 6.5.1.p.1">Internet media types are registered with a canonical form. A representation transferred via HTTP messages <em class="bcp14">MUST</em> be in the appropriate canonical form prior to its transmission except for "text" types, as defined in the next paragraph.2216 </p> 2217 <p id="rfc.section. 6.5.1.p.2">When in canonical form, media subtypes of the "text" type use CRLF as the text line break. HTTP relaxes this requirement and2345 <h3 id="rfc.section.7.5.1"><a href="#rfc.section.7.5.1">7.5.1</a> <a id="canonicalization.and.text.defaults" href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></h3> 2346 <p id="rfc.section.7.5.1.p.1">Internet media types are registered with a canonical form. A representation transferred via HTTP messages <em class="bcp14">MUST</em> be in the appropriate canonical form prior to its transmission except for "text" types, as defined in the next paragraph. 2347 </p> 2348 <p id="rfc.section.7.5.1.p.2">When in canonical form, media subtypes of the "text" type use CRLF as the text line break. HTTP relaxes this requirement and 2218 2349 allows the transport of text media with plain CR or LF alone representing a line break when it is done consistently for an 2219 2350 entire representation. HTTP applications <em class="bcp14">MUST</em> accept CRLF, bare CR, and bare LF as indicating a line break in text media received via HTTP. In addition, if the text is … … 2223 2354 body; a bare CR or LF <em class="bcp14">MUST NOT</em> be substituted for CRLF within any of the HTTP control structures (such as header fields and multipart boundaries). 2224 2355 </p> 2225 <p id="rfc.section. 6.5.1.p.3">If a representation is encoded with a content-coding, the underlying data <em class="bcp14">MUST</em> be in a form defined above prior to being encoded.2226 </p> 2227 <h3 id="rfc.section. 6.5.2"><a href="#rfc.section.6.5.2">6.5.2</a> <a id="multipart.types" href="#multipart.types">Multipart Types</a></h3>2228 <p id="rfc.section. 6.5.2.p.1">MIME provides for a number of "multipart" types — encapsulations of one or more representations within a single message body.2229 All multipart types share a common syntax, as defined in <a href="http://tools.ietf.org/html/rfc2046#section-5.1.1">Section 5.1.1</a> of <a href="#RFC2046" id="rfc.xref.RFC2046. 2"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a>, and <em class="bcp14">MUST</em> include a boundary parameter as part of the media type value. The message body is itself a protocol element and <em class="bcp14">MUST</em> therefore use only CRLF to represent line breaks between body-parts.2230 </p> 2231 <p id="rfc.section. 6.5.2.p.2">In general, HTTP treats a multipart message body no differently than any other media type: strictly as payload. HTTP does2356 <p id="rfc.section.7.5.1.p.3">If a representation is encoded with a content-coding, the underlying data <em class="bcp14">MUST</em> be in a form defined above prior to being encoded. 2357 </p> 2358 <h3 id="rfc.section.7.5.2"><a href="#rfc.section.7.5.2">7.5.2</a> <a id="multipart.types" href="#multipart.types">Multipart Types</a></h3> 2359 <p id="rfc.section.7.5.2.p.1">MIME provides for a number of "multipart" types — encapsulations of one or more representations within a single message body. 2360 All multipart types share a common syntax, as defined in <a href="http://tools.ietf.org/html/rfc2046#section-5.1.1">Section 5.1.1</a> of <a href="#RFC2046" id="rfc.xref.RFC2046.3"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a>, and <em class="bcp14">MUST</em> include a boundary parameter as part of the media type value. The message body is itself a protocol element and <em class="bcp14">MUST</em> therefore use only CRLF to represent line breaks between body-parts. 2361 </p> 2362 <p id="rfc.section.7.5.2.p.2">In general, HTTP treats a multipart message body no differently than any other media type: strictly as payload. HTTP does 2232 2363 not use the multipart boundary as an indicator of message body length. In all other respects, an HTTP user agent <em class="bcp14">SHOULD</em> follow the same or similar behavior as a MIME user agent would upon receipt of a multipart type. The MIME header fields within 2233 2364 each body-part of a multipart message body do not have any significance to HTTP beyond that defined by their MIME semantics. 2234 2365 </p> 2235 <p id="rfc.section. 6.5.2.p.3">If an application receives an unrecognized multipart subtype, the application <em class="bcp14">MUST</em> treat it as being equivalent to "multipart/mixed".2236 </p> 2237 <div class="note" id="rfc.section. 6.5.2.p.4">2366 <p id="rfc.section.7.5.2.p.3">If an application receives an unrecognized multipart subtype, the application <em class="bcp14">MUST</em> treat it as being equivalent to "multipart/mixed". 2367 </p> 2368 <div class="note" id="rfc.section.7.5.2.p.4"> 2238 2369 <p> <b>Note:</b> The "multipart/form-data" type has been specifically defined for carrying form data suitable for processing via the POST request 2239 2370 method, as described in <a href="#RFC2388" id="rfc.xref.RFC2388.1"><cite title="Returning Values from Forms: multipart/form-data">[RFC2388]</cite></a>. 2240 2371 </p> 2241 2372 </div> 2242 <h2 id="rfc.section. 6.6"><a href="#rfc.section.6.6">6.6</a> <a id="language.tags" href="#language.tags">Language Tags</a></h2>2243 <p id="rfc.section. 6.6.p.1">A language tag, as defined in <a href="#RFC5646" id="rfc.xref.RFC5646.1"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, identifies a natural language spoken, written, or otherwise conveyed by human beings for communication of information to2373 <h2 id="rfc.section.7.6"><a href="#rfc.section.7.6">7.6</a> <a id="language.tags" href="#language.tags">Language Tags</a></h2> 2374 <p id="rfc.section.7.6.p.1">A language tag, as defined in <a href="#RFC5646" id="rfc.xref.RFC5646.1"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, identifies a natural language spoken, written, or otherwise conveyed by human beings for communication of information to 2244 2375 other human beings. Computer languages are explicitly excluded. HTTP uses language tags within the <a href="#header.accept-language" class="smpl">Accept-Language</a> and <a href="#header.content-language" class="smpl">Content-Language</a> fields. 2245 2376 </p> 2246 <p id="rfc.section. 6.6.p.2">In summary, a language tag is composed of one or more parts: A primary language subtag followed by a possibly empty series2377 <p id="rfc.section.7.6.p.2">In summary, a language tag is composed of one or more parts: A primary language subtag followed by a possibly empty series 2247 2378 of subtags: 2248 2379 </p> 2249 <div id="rfc.figure.u.1 8"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#language.tags" class="smpl">language-tag</a> = <Language-Tag, defined in <a href="#RFC5646" id="rfc.xref.RFC5646.2"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, <a href="http://tools.ietf.org/html/rfc5646#section-2.1">Section 2.1</a>>2250 </pre><p id="rfc.section. 6.6.p.4">White space is not allowed within the tag and all tags are case-insensitive. The name space of language subtags is administered2380 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#language.tags" class="smpl">language-tag</a> = <Language-Tag, defined in <a href="#RFC5646" id="rfc.xref.RFC5646.2"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, <a href="http://tools.ietf.org/html/rfc5646#section-2.1">Section 2.1</a>> 2381 </pre><p id="rfc.section.7.6.p.4">White space is not allowed within the tag and all tags are case-insensitive. The name space of language subtags is administered 2251 2382 by the IANA (see <<a href="http://www.iana.org/assignments/language-subtag-registry">http://www.iana.org/assignments/language-subtag-registry</a>>). 2252 2383 </p> 2253 <div id="rfc.figure.u. 19"></div>2384 <div id="rfc.figure.u.20"></div> 2254 2385 <p>Example tags include:</p> <pre class="text"> en, en-US, es-419, az-Arab, x-pig-latin, man-Nkoo-GN 2255 </pre> <p id="rfc.section. 6.6.p.6">See <a href="#RFC5646" id="rfc.xref.RFC5646.3"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a> for further information.2256 </p> 2257 <h1 id="rfc.section. 7"><a href="#rfc.section.7">7.</a> <a id="payload" href="#payload">Payload</a></h1>2258 <p id="rfc.section. 7.p.1">HTTP messages <em class="bcp14">MAY</em> transfer a payload if not otherwise restricted by the request method or response status code. The payload consists of metadata,2386 </pre> <p id="rfc.section.7.6.p.6">See <a href="#RFC5646" id="rfc.xref.RFC5646.3"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a> for further information. 2387 </p> 2388 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="payload" href="#payload">Payload</a></h1> 2389 <p id="rfc.section.8.p.1">HTTP messages <em class="bcp14">MAY</em> transfer a payload if not otherwise restricted by the request method or response status code. The payload consists of metadata, 2259 2390 in the form of header fields, and data, in the form of the sequence of octets in the message body after any transfer-coding 2260 2391 has been decoded. 2261 2392 </p> 2262 2393 <div id="rfc.iref.p.3"></div> 2263 <p id="rfc.section. 7.p.2">A "<dfn>payload</dfn>" in HTTP is always a partial or complete representation of some resource. We use separate terms for payload and representation2394 <p id="rfc.section.8.p.2">A "<dfn>payload</dfn>" in HTTP is always a partial or complete representation of some resource. We use separate terms for payload and representation 2264 2395 because some messages contain only the associated representation's header fields (e.g., responses to HEAD) or only some part(s) 2265 2396 of the representation (e.g., the <a href="p5-range.html#status.206" class="smpl">206 (Partial Content)</a> status code). 2266 2397 </p> 2267 <h2 id="rfc.section. 7.1"><a href="#rfc.section.7.1">7.1</a> <a id="payload.header.fields" href="#payload.header.fields">Payload Header Fields</a></h2>2268 <p id="rfc.section. 7.1.p.1">HTTP header fields that specifically define the payload, rather than the associated representation, are referred to as "payload2398 <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a> <a id="payload.header.fields" href="#payload.header.fields">Payload Header Fields</a></h2> 2399 <p id="rfc.section.8.1.p.1">HTTP header fields that specifically define the payload, rather than the associated representation, are referred to as "payload 2269 2400 header fields". The following payload header fields are defined by HTTP/1.1: 2270 2401 </p> 2271 <div id="rfc.table.u. 4">2402 <div id="rfc.table.u.6"> 2272 2403 <table class="tt full left" cellpadding="3" cellspacing="0"> 2273 2404 <thead> … … 2280 2411 <tr> 2281 2412 <td class="left">Content-Length</td> 2282 <td class="left"><a href="p1-messaging.html#header.content-length" title="Content-Length">Section 3.3.2</a> of <a href="#Part1" id="rfc.xref.Part1.2 3"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td>2413 <td class="left"><a href="p1-messaging.html#header.content-length" title="Content-Length">Section 3.3.2</a> of <a href="#Part1" id="rfc.xref.Part1.25"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td> 2283 2414 </tr> 2284 2415 <tr> … … 2289 2420 </table> 2290 2421 </div> 2291 <h2 id="rfc.section.7.2"><a href="#rfc.section.7.2">7.2</a> <a id="payload.body" href="#payload.body">Payload Body</a></h2> 2292 <p id="rfc.section.7.2.p.1">A payload body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. The payload body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message. 2293 </p> 2294 <div id="rfc.iref.r.1"></div> 2295 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="representation" href="#representation">Representation</a></h1> 2296 <p id="rfc.section.8.p.1">A "<dfn>representation</dfn>" is information in a format that can be readily communicated from one party to another. A resource representation is information 2297 that reflects the state of that resource, as observed at some point in the past (e.g., in a response to GET) or to be desired 2298 at some point in the future (e.g., in a PUT request). 2299 </p> 2300 <p id="rfc.section.8.p.2">Most, but not all, representations transferred via HTTP are intended to be a representation of the target resource (the resource 2301 identified by the effective request URI). The precise semantics of a representation are determined by the type of message 2302 (request or response), the request method, the response status code, and the representation metadata. For example, the above 2303 semantic is true for the representation in any <a href="#status.200" class="smpl">200 (OK)</a> response to GET and for the representation in any PUT request. A 200 response to PUT, in contrast, contains either a representation 2304 that describes the successful action or a representation of the target resource, with the latter indicated by a <a href="#header.content-location" class="smpl">Content-Location</a> header field with the same value as the effective request URI. Likewise, response messages with an error status code usually 2305 contain a representation that describes the error and what next steps are suggested for resolving it. 2306 </p> 2307 <p id="rfc.section.8.p.3">Request and Response messages <em class="bcp14">MAY</em> transfer a representation if not otherwise restricted by the request method or response status code. A representation consists 2308 of metadata (representation header fields) and data (representation body). When a complete or partial representation is enclosed 2309 in an HTTP message, it is referred to as the payload of the message. 2310 </p> 2311 <p id="rfc.section.8.p.4">A representation body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.25"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. The representation body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message. 2312 </p> 2313 <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a> <a id="identifying.response.associated.with.representation" href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></h2> 2314 <p id="rfc.section.8.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p> 2315 <p id="rfc.section.8.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p> 2316 <p id="rfc.section.8.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.26"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following 2317 rules are used (with the first applicable one being selected): 2318 </p> 2319 <ol> 2320 <li>If the response status code is <a href="#status.200" class="smpl">200 (OK)</a> or <a href="#status.203" class="smpl">203 2321 (Non-Authoritative Information)</a> and the request method was GET, the response payload is a representation of the target resource. 2322 </li> 2323 <li>If the response status code is <a href="#status.204" class="smpl">204 (No Content)</a>, <a href="p5-range.html#status.206" class="smpl">206 (Partial Content)</a>, or <a href="p4-conditional.html#status.304" class="smpl">304 (Not Modified)</a> and the request method was GET or HEAD, the response payload is a partial representation of the target resource. 2324 </li> 2325 <li>If the response has a <a href="#header.content-location" class="smpl">Content-Location</a> header field, and that URI is the same as the effective request URI, the response payload is a representation of the target 2326 resource. 2327 </li> 2328 <li>If the response has a <a href="#header.content-location" class="smpl">Content-Location</a> header field, and that URI is not the same as the effective request URI, then the response asserts that its payload is a representation 2329 of the resource identified by the Content-Location URI. However, such an assertion cannot be trusted unless it can be verified 2330 by other means (not defined by HTTP). 2331 </li> 2332 <li>Otherwise, the response is a representation of an anonymous (i.e., unidentified) resource.</li> 2333 </ol> 2334 <p id="rfc.section.8.1.p.5"> <span class="comment" id="TODO-req-uri">[<a href="#TODO-req-uri" class="smpl">TODO-req-uri</a>: The comparison function is going to have to be defined somewhere, because we already need to compare URIs for things like 2335 cache invalidation.]</span> 2336 </p> 2337 <h2 id="rfc.section.8.2"><a href="#rfc.section.8.2">8.2</a> <a id="representation.header.fields" href="#representation.header.fields">Representation Header Fields</a></h2> 2338 <p id="rfc.section.8.2.p.1">Representation header fields define metadata about the representation data enclosed in the message body or, if no message 2339 body is present, about the representation that would have been transferred in a <a href="#status.200" class="smpl">200 (OK)</a> response to a simultaneous GET request with the same effective request URI. 2340 </p> 2341 <p id="rfc.section.8.2.p.2">The following header fields are defined as representation metadata:</p> 2342 <div id="rfc.table.u.5"> 2343 <table class="tt full left" cellpadding="3" cellspacing="0"> 2344 <thead> 2345 <tr> 2346 <th>Header Field Name</th> 2347 <th>Defined in...</th> 2348 </tr> 2349 </thead> 2350 <tbody> 2351 <tr> 2352 <td class="left">Content-Encoding</td> 2353 <td class="left"><a href="#header.content-encoding" id="rfc.xref.header.content-encoding.2" title="Content-Encoding">Section 10.6</a></td> 2354 </tr> 2355 <tr> 2356 <td class="left">Content-Language</td> 2357 <td class="left"><a href="#header.content-language" id="rfc.xref.header.content-language.1" title="Content-Language">Section 10.7</a></td> 2358 </tr> 2359 <tr> 2360 <td class="left">Content-Location</td> 2361 <td class="left"><a href="#header.content-location" id="rfc.xref.header.content-location.2" title="Content-Location">Section 10.8</a></td> 2362 </tr> 2363 <tr> 2364 <td class="left">Content-Type</td> 2365 <td class="left"><a href="#header.content-type" id="rfc.xref.header.content-type.3" title="Content-Type">Section 10.9</a></td> 2366 </tr> 2367 <tr> 2368 <td class="left">Expires</td> 2369 <td class="left"><a href="p6-cache.html#header.expires" title="Expires">Section 7.3</a> of <a href="#Part6" id="rfc.xref.Part6.16"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 2370 </tr> 2371 </tbody> 2372 </table> 2373 </div> 2374 <p id="rfc.section.8.2.p.3"><span id="rfc.iref.s.43"></span> We use the term "<dfn>selected representation</dfn>" to refer to the the current representation of a target resource that would have been selected in a successful response if 2375 the same request had used the method GET and excluded any conditional request header fields. 2376 </p> 2377 <p id="rfc.section.8.2.p.4">Additional header fields define metadata about the selected representation, which might differ from the representation included 2378 in the message for responses to some state-changing methods. The following header fields are defined as selected representation 2379 metadata: 2380 </p> 2381 <div id="rfc.table.u.6"> 2382 <table class="tt full left" cellpadding="3" cellspacing="0"> 2383 <thead> 2384 <tr> 2385 <th>Header Field Name</th> 2386 <th>Defined in...</th> 2387 </tr> 2388 </thead> 2389 <tbody> 2390 <tr> 2391 <td class="left">ETag</td> 2392 <td class="left"><a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.12"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 2393 </tr> 2394 <tr> 2395 <td class="left">Last-Modified</td> 2396 <td class="left"><a href="p4-conditional.html#header.last-modified" title="Last-Modified">Section 2.2</a> of <a href="#Part4" id="rfc.xref.Part4.13"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 2397 </tr> 2398 </tbody> 2399 </table> 2400 </div> 2401 <h2 id="rfc.section.8.3"><a href="#rfc.section.8.3">8.3</a> <a id="representation.data" href="#representation.data">Representation Data</a></h2> 2402 <p id="rfc.section.8.3.p.1">The representation body associated with an HTTP message is either provided as the payload body of the message or referred 2403 to by the message semantics and the effective request URI. The representation data is in a format and encoding defined by 2404 the representation metadata header fields. 2405 </p> 2406 <p id="rfc.section.8.3.p.2">The data type of the representation data is determined via the header fields <a href="#header.content-type" class="smpl">Content-Type</a> and <a href="#header.content-encoding" class="smpl">Content-Encoding</a>. These define a two-layer, ordered encoding model: 2407 </p> 2408 <div id="rfc.figure.u.20"></div><pre class="text"> representation-data := Content-Encoding( Content-Type( bits ) ) 2409 </pre><p id="rfc.section.8.3.p.4"> <a href="#header.content-type" class="smpl">Content-Type</a> specifies the media type of the underlying data, which defines both the data format and how that data <em class="bcp14">SHOULD</em> be processed by the recipient (within the scope of the request method semantics). Any HTTP/1.1 message containing a payload 2410 body <em class="bcp14">SHOULD</em> include a Content-Type header field defining the media type of the associated representation unless that metadata is unknown 2411 to the sender. If the Content-Type header field is not present, it indicates that the sender does not know the media type 2412 of the representation; recipients <em class="bcp14">MAY</em> either assume that the media type is "application/octet-stream" (<a href="#RFC2046" id="rfc.xref.RFC2046.3"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a>, <a href="http://tools.ietf.org/html/rfc2046#section-4.5.1">Section 4.5.1</a>) or examine the content to determine its type. 2413 </p> 2414 <p id="rfc.section.8.3.p.5">In practice, resource owners do not always properly configure their origin server to provide the correct Content-Type for 2415 a given representation, with the result that some clients will examine a response body's content and override the specified 2416 type. Clients that do so risk drawing incorrect conclusions, which might expose additional security risks (e.g., "privilege 2417 escalation"). Furthermore, it is impossible to determine the sender's intent by examining the data format: many data formats 2418 match multiple media types that differ only in processing semantics. Implementers are encouraged to provide a means of disabling 2419 such "content sniffing" when it is used. 2420 </p> 2421 <p id="rfc.section.8.3.p.6"> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> is used to indicate any additional content codings applied to the data, usually for the purpose of data compression, that 2422 are a property of the representation. If Content-Encoding is not present, then there is no additional encoding beyond that 2423 defined by the <a href="#header.content-type" class="smpl">Content-Type</a> header field. 2422 <h2 id="rfc.section.8.2"><a href="#rfc.section.8.2">8.2</a> <a id="payload.body" href="#payload.body">Payload Body</a></h2> 2423 <p id="rfc.section.8.2.p.1">A payload body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.26"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. The payload body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message. 2424 2424 </p> 2425 2425 <h1 id="rfc.section.9"><a href="#rfc.section.9">9.</a> <a id="content.negotiation" href="#content.negotiation">Content Negotiation</a></h1> … … 2629 2629 </p> 2630 2630 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.37"></span> <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#rule.charset" class="smpl">charset</a> / "*" ) [ <a href="#quality.values" class="smpl">weight</a> ] ) 2631 </pre><p id="rfc.section.10.2.p.3">Character encoding values (a.k.a., charsets) are described in <a href="#character.sets" title="Character Encodings (charset)">Section 6.3</a>. Each charset <em class="bcp14">MAY</em> be given an associated quality value which represents the user's preference for that charset, as defined in <a href="#quality.values" title="Quality Values">Section 9.3</a>. An example is2631 </pre><p id="rfc.section.10.2.p.3">Character encoding values (a.k.a., charsets) are described in <a href="#character.sets" title="Character Encodings (charset)">Section 7.3</a>. Each charset <em class="bcp14">MAY</em> be given an associated quality value which represents the user's preference for that charset, as defined in <a href="#quality.values" title="Quality Values">Section 9.3</a>. An example is 2632 2632 </p> 2633 2633 <div id="rfc.figure.u.28"></div><pre class="text"> Accept-Charset: iso-8859-5, unicode-1-1;q=0.8 … … 2643 2643 <div id="rfc.iref.h.4"></div> 2644 2644 <h2 id="rfc.section.10.3"><a href="#rfc.section.10.3">10.3</a> <a id="header.accept-encoding" href="#header.accept-encoding">Accept-Encoding</a></h2> 2645 <p id="rfc.section.10.3.p.1">The "Accept-Encoding" header field can be used by user agents to indicate what response content-codings (<a href="#content.codings" title="Content Codings">Section 6.4</a>) are acceptable in the response. An "identity" token is used as a synonym for "no encoding" in order to communicate when2645 <p id="rfc.section.10.3.p.1">The "Accept-Encoding" header field can be used by user agents to indicate what response content-codings (<a href="#content.codings" title="Content Codings">Section 7.4</a>) are acceptable in the response. An "identity" token is used as a synonym for "no encoding" in order to communicate when 2646 2646 no encoding is preferred. 2647 2647 </p> … … 2685 2685 <h2 id="rfc.section.10.4"><a href="#rfc.section.10.4">10.4</a> <a id="header.accept-language" href="#header.accept-language">Accept-Language</a></h2> 2686 2686 <p id="rfc.section.10.4.p.1">The "Accept-Language" header field can be used by user agents to indicate the set of natural languages that are preferred 2687 in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section 6.6</a>.2687 in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section 7.6</a>. 2688 2688 </p> 2689 2689 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span> <a href="#header.accept-language" class="smpl">Accept-Language</a> = 1#( <a href="#header.accept-language" class="smpl">language-range</a> [ <a href="#quality.values" class="smpl">weight</a> ] ) … … 2736 2736 </p> 2737 2737 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.43"></span> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> = 1#<a href="#content.codings" class="smpl">content-coding</a> 2738 </pre><p id="rfc.section.10.6.p.3">Content codings are defined in <a href="#content.codings" title="Content Codings">Section 6.4</a>. An example of its use is2738 </pre><p id="rfc.section.10.6.p.3">Content codings are defined in <a href="#content.codings" title="Content Codings">Section 7.4</a>. An example of its use is 2739 2739 </p> 2740 2740 <div id="rfc.figure.u.36"></div><pre class="text"> Content-Encoding: gzip … … 2763 2763 </p> 2764 2764 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.44"></span> <a href="#header.content-language" class="smpl">Content-Language</a> = 1#<a href="#language.tags" class="smpl">language-tag</a> 2765 </pre><p id="rfc.section.10.7.p.3">Language tags are defined in <a href="#language.tags" title="Language Tags">Section 6.6</a>. The primary purpose of Content-Language is to allow a user to identify and differentiate representations according to the2765 </pre><p id="rfc.section.10.7.p.3">Language tags are defined in <a href="#language.tags" title="Language Tags">Section 7.6</a>. The primary purpose of Content-Language is to allow a user to identify and differentiate representations according to the 2766 2766 user's own preferred language. Thus, if the body content is intended only for a Danish-literate audience, the appropriate 2767 2767 field is … … 2829 2829 </p> 2830 2830 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.46"></span> <a href="#header.content-type" class="smpl">Content-Type</a> = <a href="#media.types" class="smpl">media-type</a> 2831 </pre><p id="rfc.section.10.9.p.3">Media types are defined in <a href="#media.types" title="Media Types">Section 6.5</a>. An example of the field is2831 </pre><p id="rfc.section.10.9.p.3">Media types are defined in <a href="#media.types" title="Media Types">Section 7.5</a>. An example of the field is 2832 2832 </p> 2833 2833 <div id="rfc.figure.u.42"></div><pre class="text"> Content-Type: text/html; charset=ISO-8859-4 2834 </pre><p id="rfc.section.10.9.p.5">Further discussion of Content-Type is provided in <a href="#representation.data" title="Representation Data">Section 8.3</a>.2834 </pre><p id="rfc.section.10.9.p.5">Further discussion of Content-Type is provided in <a href="#representation.data" title="Representation Data">Section 3.3</a>. 2835 2835 </p> 2836 2836 <div id="rfc.iref.d.3"></div> … … 2838 2838 <h2 id="rfc.section.10.10"><a href="#rfc.section.10.10">10.10</a> <a id="header.date" href="#header.date">Date</a></h2> 2839 2839 <p id="rfc.section.10.10.p.1">The "Date" header field represents the date and time at which the message was originated, having the same semantics as the 2840 Origination Date Field (orig-date) defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as defined in <a href="#http.date" title="Date/Time Formats">Section 6.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format.2840 Origination Date Field (orig-date) defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as defined in <a href="#http.date" title="Date/Time Formats">Section 7.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 2841 2841 </p> 2842 2842 <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.47"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a> … … 2946 2946 <div id="rfc.iref.h.15"></div> 2947 2947 <h2 id="rfc.section.10.14"><a href="#rfc.section.10.14">10.14</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2> 2948 <p id="rfc.section.10.14.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 3.3.7</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 3.3.1</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting2948 <p id="rfc.section.10.14.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 4.3.7</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 4.3.1</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting 2949 2949 to trace a request which appears to be failing or looping mid-chain. 2950 2950 </p> … … 2994 2994 <h2 id="rfc.section.10.17"><a href="#rfc.section.10.17">10.17</a> <a id="header.server" href="#header.server">Server</a></h2> 2995 2995 <p id="rfc.section.10.17.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p> 2996 <p id="rfc.section.10.17.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 6.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.29"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for2996 <p id="rfc.section.10.17.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 7.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.29"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for 2997 2997 identifying the application. 2998 2998 </p> … … 3016 3016 user agent limitations. 3017 3017 </p> 3018 <p id="rfc.section.10.18.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 6.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.31"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance3018 <p id="rfc.section.10.18.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 7.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.31"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance 3019 3019 for identifying the application. 3020 3020 </p> … … 3032 3032 </pre><h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 3033 3033 <h2 id="rfc.section.11.1"><a href="#rfc.section.11.1">11.1</a> <a id="method.registry" href="#method.registry">Method Registry</a></h2> 3034 <p id="rfc.section.11.1.p.1">The HTTP Method Registry defines the name space for the request method token (<a href="#methods" title="Request Methods">Section 3</a>). The method registry is maintained at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>>.3034 <p id="rfc.section.11.1.p.1">The HTTP Method Registry defines the name space for the request method token (<a href="#methods" title="Request Methods">Section 4</a>). The method registry is maintained at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>>. 3035 3035 </p> 3036 3036 <h3 id="rfc.section.11.1.1"><a href="#rfc.section.11.1.1">11.1.1</a> <a id="method.procedure" href="#method.procedure">Procedure</a></h3> … … 3038 3038 </p> 3039 3039 <ul> 3040 <li>Method Name (see <a href="#methods" title="Request Methods">Section 3</a>)3041 </li> 3042 <li>Safe ("yes" or "no", see <a href="#safe.methods" title="Safe Methods">Section 3.2.1</a>)3043 </li> 3044 <li>Idempotent ("yes" or "no", see <a href="#idempotent.methods" title="Idempotent Methods">Section 3.2.2</a>)3040 <li>Method Name (see <a href="#methods" title="Request Methods">Section 4</a>) 3041 </li> 3042 <li>Safe ("yes" or "no", see <a href="#safe.methods" title="Safe Methods">Section 4.2.1</a>) 3043 </li> 3044 <li>Idempotent ("yes" or "no", see <a href="#idempotent.methods" title="Idempotent Methods">Section 4.2.2</a>) 3045 3045 </li> 3046 3046 <li>Pointer to specification text</li> … … 3058 3058 a Content-Length header field with a value of "0". 3059 3059 </p> 3060 <p id="rfc.section.11.1.2.p.3">New method definitions need to indicate whether they are safe (<a href="#safe.methods" title="Safe Methods">Section 3.2.1</a>), idempotent (<a href="#idempotent.methods" title="Idempotent Methods">Section 3.2.2</a>), cacheable (<a href="#cacheable.methods" title="Cacheable Methods">Section 3.2.3</a>), and what semantics are to be associated with the request body if any is present in the request. If a method is cacheable,3060 <p id="rfc.section.11.1.2.p.3">New method definitions need to indicate whether they are safe (<a href="#safe.methods" title="Safe Methods">Section 4.2.1</a>), idempotent (<a href="#idempotent.methods" title="Idempotent Methods">Section 4.2.2</a>), cacheable (<a href="#cacheable.methods" title="Cacheable Methods">Section 4.2.3</a>), and what semantics are to be associated with the request body if any is present in the request. If a method is cacheable, 3061 3061 the method definition ought to describe how, and under what conditions, a cache can store a response and use it to satisfy 3062 3062 a subsequent request. … … 3080 3080 <td class="left">no</td> 3081 3081 <td class="left">no</td> 3082 <td class="left"> <a href="#CONNECT" id="rfc.xref.CONNECT.2" title="CONNECT">Section 3.3.8</a>3082 <td class="left"> <a href="#CONNECT" id="rfc.xref.CONNECT.2" title="CONNECT">Section 4.3.8</a> 3083 3083 </td> 3084 3084 </tr> … … 3087 3087 <td class="left">no</td> 3088 3088 <td class="left">yes</td> 3089 <td class="left"> <a href="#DELETE" id="rfc.xref.DELETE.2" title="DELETE">Section 3.3.6</a>3089 <td class="left"> <a href="#DELETE" id="rfc.xref.DELETE.2" title="DELETE">Section 4.3.6</a> 3090 3090 </td> 3091 3091 </tr> … … 3094 3094 <td class="left">yes</td> 3095 3095 <td class="left">yes</td> 3096 <td class="left"> <a href="#GET" id="rfc.xref.GET.2" title="GET">Section 3.3.2</a>3096 <td class="left"> <a href="#GET" id="rfc.xref.GET.2" title="GET">Section 4.3.2</a> 3097 3097 </td> 3098 3098 </tr> … … 3101 3101 <td class="left">yes</td> 3102 3102 <td class="left">yes</td> 3103 <td class="left"> <a href="#HEAD" id="rfc.xref.HEAD.2" title="HEAD">Section 3.3.3</a>3103 <td class="left"> <a href="#HEAD" id="rfc.xref.HEAD.2" title="HEAD">Section 4.3.3</a> 3104 3104 </td> 3105 3105 </tr> … … 3108 3108 <td class="left">yes</td> 3109 3109 <td class="left">yes</td> 3110 <td class="left"> <a href="#OPTIONS" id="rfc.xref.OPTIONS.3" title="OPTIONS">Section 3.3.1</a>3110 <td class="left"> <a href="#OPTIONS" id="rfc.xref.OPTIONS.3" title="OPTIONS">Section 4.3.1</a> 3111 3111 </td> 3112 3112 </tr> … … 3115 3115 <td class="left">no</td> 3116 3116 <td class="left">no</td> 3117 <td class="left"> <a href="#POST" id="rfc.xref.POST.2" title="POST">Section 3.3.4</a>3117 <td class="left"> <a href="#POST" id="rfc.xref.POST.2" title="POST">Section 4.3.4</a> 3118 3118 </td> 3119 3119 </tr> … … 3122 3122 <td class="left">no</td> 3123 3123 <td class="left">yes</td> 3124 <td class="left"> <a href="#PUT" id="rfc.xref.PUT.2" title="PUT">Section 3.3.5</a>3124 <td class="left"> <a href="#PUT" id="rfc.xref.PUT.2" title="PUT">Section 4.3.5</a> 3125 3125 </td> 3126 3126 </tr> … … 3129 3129 <td class="left">yes</td> 3130 3130 <td class="left">yes</td> 3131 <td class="left"> <a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 3.3.7</a>3131 <td class="left"> <a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 4.3.7</a> 3132 3132 </td> 3133 3133 </tr> … … 3136 3136 </div> 3137 3137 <h2 id="rfc.section.11.2"><a href="#rfc.section.11.2">11.2</a> <a id="status.code.registry" href="#status.code.registry">Status Code Registry</a></h2> 3138 <p id="rfc.section.11.2.p.1">The HTTP Status Code Registry defines the name space for the response status-code token (<a href="#status.codes" title="Response Status Codes">Section 5</a>). The status code registry is maintained at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>>.3138 <p id="rfc.section.11.2.p.1">The HTTP Status Code Registry defines the name space for the response status-code token (<a href="#status.codes" title="Response Status Codes">Section 6</a>). The status code registry is maintained at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>>. 3139 3139 </p> 3140 3140 <p id="rfc.section.11.2.p.2">This section replaces the registration procedure for HTTP Status Codes previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.1"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. … … 3155 3155 (e.g., those that are required, those that modify the semantics of the response). 3156 3156 </p> 3157 <p id="rfc.section.11.2.2.p.4">New HTTP status codes are required to fall under one of the categories defined in <a href="#status.codes" title="Response Status Codes">Section 5</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate3157 <p id="rfc.section.11.2.2.p.4">New HTTP status codes are required to fall under one of the categories defined in <a href="#status.codes" title="Response Status Codes">Section 6</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate 3158 3158 a zero-length response body. They can require the presence of one or more particular HTTP response header field(s). 3159 3159 </p> 3160 <p id="rfc.section.11.2.2.p.5">Likewise, their definitions can specify that caches are allowed to use heuristics to determine their freshness (see <a href="#Part6" id="rfc.xref.Part6.18"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>; by default, it is not allowed), and can define how to determine the resource which they carry a representation for (see <a href="#identifying.response.associated.with.representation" title="Identifying the Resource Associated with a Representation">Section 8.1</a>; by default, it is anonymous).3160 <p id="rfc.section.11.2.2.p.5">Likewise, their definitions can specify that caches are allowed to use heuristics to determine their freshness (see <a href="#Part6" id="rfc.xref.Part6.18"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>; by default, it is not allowed), and can define how to determine the resource which they carry a representation for (see <a href="#identifying.response.associated.with.representation" title="Identifying the Resource Associated with a Representation">Section 3.1</a>; by default, it is anonymous). 3161 3161 </p> 3162 3162 <h3 id="rfc.section.11.2.3"><a href="#rfc.section.11.2.3">11.2.3</a> <a id="status.code.registration" href="#status.code.registration">Registrations</a></h3> … … 3176 3176 <td class="left">100</td> 3177 3177 <td class="left">Continue</td> 3178 <td class="left"> <a href="#status.100" id="rfc.xref.status.100.2" title="100 Continue">Section 5.2.1</a>3178 <td class="left"> <a href="#status.100" id="rfc.xref.status.100.2" title="100 Continue">Section 6.2.1</a> 3179 3179 </td> 3180 3180 </tr> … … 3182 3182 <td class="left">101</td> 3183 3183 <td class="left">Switching Protocols</td> 3184 <td class="left"> <a href="#status.101" id="rfc.xref.status.101.2" title="101 Switching Protocols">Section 5.2.2</a>3184 <td class="left"> <a href="#status.101" id="rfc.xref.status.101.2" title="101 Switching Protocols">Section 6.2.2</a> 3185 3185 </td> 3186 3186 </tr> … … 3188 3188 <td class="left">200</td> 3189 3189 <td class="left">OK</td> 3190 <td class="left"> <a href="#status.200" id="rfc.xref.status.200.2" title="200 OK">Section 5.3.1</a>3190 <td class="left"> <a href="#status.200" id="rfc.xref.status.200.2" title="200 OK">Section 6.3.1</a> 3191 3191 </td> 3192 3192 </tr> … … 3194 3194 <td class="left">201</td> 3195 3195 <td class="left">Created</td> 3196 <td class="left"> <a href="#status.201" id="rfc.xref.status.201.2" title="201 Created">Section 5.3.2</a>3196 <td class="left"> <a href="#status.201" id="rfc.xref.status.201.2" title="201 Created">Section 6.3.2</a> 3197 3197 </td> 3198 3198 </tr> … … 3200 3200 <td class="left">202</td> 3201 3201 <td class="left">Accepted</td> 3202 <td class="left"> <a href="#status.202" id="rfc.xref.status.202.2" title="202 Accepted">Section 5.3.3</a>3202 <td class="left"> <a href="#status.202" id="rfc.xref.status.202.2" title="202 Accepted">Section 6.3.3</a> 3203 3203 </td> 3204 3204 </tr> … … 3206 3206 <td class="left">203</td> 3207 3207 <td class="left">Non-Authoritative Information</td> 3208 <td class="left"> <a href="#status.203" id="rfc.xref.status.203.2" title="203 Non-Authoritative Information">Section 5.3.4</a>3208 <td class="left"> <a href="#status.203" id="rfc.xref.status.203.2" title="203 Non-Authoritative Information">Section 6.3.4</a> 3209 3209 </td> 3210 3210 </tr> … … 3212 3212 <td class="left">204</td> 3213 3213 <td class="left">No Content</td> 3214 <td class="left"> <a href="#status.204" id="rfc.xref.status.204.2" title="204 No Content">Section 5.3.5</a>3214 <td class="left"> <a href="#status.204" id="rfc.xref.status.204.2" title="204 No Content">Section 6.3.5</a> 3215 3215 </td> 3216 3216 </tr> … … 3218 3218 <td class="left">205</td> 3219 3219 <td class="left">Reset Content</td> 3220 <td class="left"> <a href="#status.205" id="rfc.xref.status.205.2" title="205 Reset Content">Section 5.3.6</a>3220 <td class="left"> <a href="#status.205" id="rfc.xref.status.205.2" title="205 Reset Content">Section 6.3.6</a> 3221 3221 </td> 3222 3222 </tr> … … 3224 3224 <td class="left">300</td> 3225 3225 <td class="left">Multiple Choices</td> 3226 <td class="left"> <a href="#status.300" id="rfc.xref.status.300.2" title="300 Multiple Choices">Section 5.4.1</a>3226 <td class="left"> <a href="#status.300" id="rfc.xref.status.300.2" title="300 Multiple Choices">Section 6.4.1</a> 3227 3227 </td> 3228 3228 </tr> … … 3230 3230 <td class="left">301</td> 3231 3231 <td class="left">Moved Permanently</td> 3232 <td class="left"> <a href="#status.301" id="rfc.xref.status.301.2" title="301 Moved Permanently">Section 5.4.2</a>3232 <td class="left"> <a href="#status.301" id="rfc.xref.status.301.2" title="301 Moved Permanently">Section 6.4.2</a> 3233 3233 </td> 3234 3234 </tr> … … 3236 3236 <td class="left">302</td> 3237 3237 <td class="left">Found</td> 3238 <td class="left"> <a href="#status.302" id="rfc.xref.status.302.2" title="302 Found">Section 5.4.3</a>3238 <td class="left"> <a href="#status.302" id="rfc.xref.status.302.2" title="302 Found">Section 6.4.3</a> 3239 3239 </td> 3240 3240 </tr> … … 3242 3242 <td class="left">303</td> 3243 3243 <td class="left">See Other</td> 3244 <td class="left"> <a href="#status.303" id="rfc.xref.status.303.2" title="303 See Other">Section 5.4.4</a>3244 <td class="left"> <a href="#status.303" id="rfc.xref.status.303.2" title="303 See Other">Section 6.4.4</a> 3245 3245 </td> 3246 3246 </tr> … … 3248 3248 <td class="left">305</td> 3249 3249 <td class="left">Use Proxy</td> 3250 <td class="left"> <a href="#status.305" id="rfc.xref.status.305.2" title="305 Use Proxy">Section 5.4.5</a>3250 <td class="left"> <a href="#status.305" id="rfc.xref.status.305.2" title="305 Use Proxy">Section 6.4.5</a> 3251 3251 </td> 3252 3252 </tr> … … 3254 3254 <td class="left">306</td> 3255 3255 <td class="left">(Unused)</td> 3256 <td class="left"> <a href="#status.306" id="rfc.xref.status.306.1" title="306 (Unused)">Section 5.4.6</a>3256 <td class="left"> <a href="#status.306" id="rfc.xref.status.306.1" title="306 (Unused)">Section 6.4.6</a> 3257 3257 </td> 3258 3258 </tr> … … 3260 3260 <td class="left">307</td> 3261 3261 <td class="left">Temporary Redirect</td> 3262 <td class="left"> <a href="#status.307" id="rfc.xref.status.307.2" title="307 Temporary Redirect">Section 5.4.7</a>3262 <td class="left"> <a href="#status.307" id="rfc.xref.status.307.2" title="307 Temporary Redirect">Section 6.4.7</a> 3263 3263 </td> 3264 3264 </tr> … … 3266 3266 <td class="left">400</td> 3267 3267 <td class="left">Bad Request</td> 3268 <td class="left"> <a href="#status.400" id="rfc.xref.status.400.2" title="400 Bad Request">Section 5.5.1</a>3268 <td class="left"> <a href="#status.400" id="rfc.xref.status.400.2" title="400 Bad Request">Section 6.5.1</a> 3269 3269 </td> 3270 3270 </tr> … … 3272 3272 <td class="left">402</td> 3273 3273 <td class="left">Payment Required</td> 3274 <td class="left"> <a href="#status.402" id="rfc.xref.status.402.2" title="402 Payment Required">Section 5.5.2</a>3274 <td class="left"> <a href="#status.402" id="rfc.xref.status.402.2" title="402 Payment Required">Section 6.5.2</a> 3275 3275 </td> 3276 3276 </tr> … … 3278 3278 <td class="left">403</td> 3279 3279 <td class="left">Forbidden</td> 3280 <td class="left"> <a href="#status.403" id="rfc.xref.status.403.2" title="403 Forbidden">Section 5.5.3</a>3280 <td class="left"> <a href="#status.403" id="rfc.xref.status.403.2" title="403 Forbidden">Section 6.5.3</a> 3281 3281 </td> 3282 3282 </tr> … … 3284 3284 <td class="left">404</td> 3285 3285 <td class="left">Not Found</td> 3286 <td class="left"> <a href="#status.404" id="rfc.xref.status.404.2" title="404 Not Found">Section 5.5.4</a>3286 <td class="left"> <a href="#status.404" id="rfc.xref.status.404.2" title="404 Not Found">Section 6.5.4</a> 3287 3287 </td> 3288 3288 </tr> … … 3290 3290 <td class="left">405</td> 3291 3291 <td class="left">Method Not Allowed</td> 3292 <td class="left"> <a href="#status.405" id="rfc.xref.status.405.2" title="405 Method Not Allowed">Section 5.5.5</a>3292 <td class="left"> <a href="#status.405" id="rfc.xref.status.405.2" title="405 Method Not Allowed">Section 6.5.5</a> 3293 3293 </td> 3294 3294 </tr> … … 3296 3296 <td class="left">406</td> 3297 3297 <td class="left">Not Acceptable</td> 3298 <td class="left"> <a href="#status.406" id="rfc.xref.status.406.2" title="406 Not Acceptable">Section 5.5.6</a>3298 <td class="left"> <a href="#status.406" id="rfc.xref.status.406.2" title="406 Not Acceptable">Section 6.5.6</a> 3299 3299 </td> 3300 3300 </tr> … … 3302 3302 <td class="left">408</td> 3303 3303 <td class="left">Request Timeout</td> 3304 <td class="left"> <a href="#status.408" id="rfc.xref.status.408.2" title="408 Request Timeout">Section 5.5.7</a>3304 <td class="left"> <a href="#status.408" id="rfc.xref.status.408.2" title="408 Request Timeout">Section 6.5.7</a> 3305 3305 </td> 3306 3306 </tr> … … 3308 3308 <td class="left">409</td> 3309 3309 <td class="left">Conflict</td> 3310 <td class="left"> <a href="#status.409" id="rfc.xref.status.409.2" title="409 Conflict">Section 5.5.8</a>3310 <td class="left"> <a href="#status.409" id="rfc.xref.status.409.2" title="409 Conflict">Section 6.5.8</a> 3311 3311 </td> 3312 3312 </tr> … … 3314 3314 <td class="left">410</td> 3315 3315 <td class="left">Gone</td> 3316 <td class="left"> <a href="#status.410" id="rfc.xref.status.410.2" title="410 Gone">Section 5.5.9</a>3316 <td class="left"> <a href="#status.410" id="rfc.xref.status.410.2" title="410 Gone">Section 6.5.9</a> 3317 3317 </td> 3318 3318 </tr> … … 3320 3320 <td class="left">411</td> 3321 3321 <td class="left">Length Required</td> 3322 <td class="left"> <a href="#status.411" id="rfc.xref.status.411.2" title="411 Length Required">Section 5.5.10</a>3322 <td class="left"> <a href="#status.411" id="rfc.xref.status.411.2" title="411 Length Required">Section 6.5.10</a> 3323 3323 </td> 3324 3324 </tr> … … 3326 3326 <td class="left">413</td> 3327 3327 <td class="left">Request Representation Too Large</td> 3328 <td class="left"> <a href="#status.413" id="rfc.xref.status.413.2" title="413 Request Representation Too Large">Section 5.5.11</a>3328 <td class="left"> <a href="#status.413" id="rfc.xref.status.413.2" title="413 Request Representation Too Large">Section 6.5.11</a> 3329 3329 </td> 3330 3330 </tr> … … 3332 3332 <td class="left">414</td> 3333 3333 <td class="left">URI Too Long</td> 3334 <td class="left"> <a href="#status.414" id="rfc.xref.status.414.2" title="414 URI Too Long">Section 5.5.12</a>3334 <td class="left"> <a href="#status.414" id="rfc.xref.status.414.2" title="414 URI Too Long">Section 6.5.12</a> 3335 3335 </td> 3336 3336 </tr> … … 3338 3338 <td class="left">415</td> 3339 3339 <td class="left">Unsupported Media Type</td> 3340 <td class="left"> <a href="#status.415" id="rfc.xref.status.415.2" title="415 Unsupported Media Type">Section 5.5.13</a>3340 <td class="left"> <a href="#status.415" id="rfc.xref.status.415.2" title="415 Unsupported Media Type">Section 6.5.13</a> 3341 3341 </td> 3342 3342 </tr> … … 3344 3344 <td class="left">417</td> 3345 3345 <td class="left">Expectation Failed</td> 3346 <td class="left"> <a href="#status.417" id="rfc.xref.status.417.2" title="417 Expectation Failed">Section 5.5.14</a>3346 <td class="left"> <a href="#status.417" id="rfc.xref.status.417.2" title="417 Expectation Failed">Section 6.5.14</a> 3347 3347 </td> 3348 3348 </tr> … … 3350 3350 <td class="left">426</td> 3351 3351 <td class="left">Upgrade Required</td> 3352 <td class="left"> <a href="#status.426" id="rfc.xref.status.426.2" title="426 Upgrade Required">Section 5.5.15</a>3352 <td class="left"> <a href="#status.426" id="rfc.xref.status.426.2" title="426 Upgrade Required">Section 6.5.15</a> 3353 3353 </td> 3354 3354 </tr> … … 3356 3356 <td class="left">500</td> 3357 3357 <td class="left">Internal Server Error</td> 3358 <td class="left"> <a href="#status.500" id="rfc.xref.status.500.2" title="500 Internal Server Error">Section 5.6.1</a>3358 <td class="left"> <a href="#status.500" id="rfc.xref.status.500.2" title="500 Internal Server Error">Section 6.6.1</a> 3359 3359 </td> 3360 3360 </tr> … … 3362 3362 <td class="left">501</td> 3363 3363 <td class="left">Not Implemented</td> 3364 <td class="left"> <a href="#status.501" id="rfc.xref.status.501.2" title="501 Not Implemented">Section 5.6.2</a>3364 <td class="left"> <a href="#status.501" id="rfc.xref.status.501.2" title="501 Not Implemented">Section 6.6.2</a> 3365 3365 </td> 3366 3366 </tr> … … 3368 3368 <td class="left">502</td> 3369 3369 <td class="left">Bad Gateway</td> 3370 <td class="left"> <a href="#status.502" id="rfc.xref.status.502.2" title="502 Bad Gateway">Section 5.6.3</a>3370 <td class="left"> <a href="#status.502" id="rfc.xref.status.502.2" title="502 Bad Gateway">Section 6.6.3</a> 3371 3371 </td> 3372 3372 </tr> … … 3374 3374 <td class="left">503</td> 3375 3375 <td class="left">Service Unavailable</td> 3376 <td class="left"> <a href="#status.503" id="rfc.xref.status.503.2" title="503 Service Unavailable">Section 5.6.4</a>3376 <td class="left"> <a href="#status.503" id="rfc.xref.status.503.2" title="503 Service Unavailable">Section 6.6.4</a> 3377 3377 </td> 3378 3378 </tr> … … 3380 3380 <td class="left">504</td> 3381 3381 <td class="left">Gateway Timeout</td> 3382 <td class="left"> <a href="#status.504" id="rfc.xref.status.504.2" title="504 Gateway Timeout">Section 5.6.5</a>3382 <td class="left"> <a href="#status.504" id="rfc.xref.status.504.2" title="504 Gateway Timeout">Section 6.6.5</a> 3383 3383 </td> 3384 3384 </tr> … … 3386 3386 <td class="left">505</td> 3387 3387 <td class="left">HTTP Version Not Supported</td> 3388 <td class="left"> <a href="#status.505" id="rfc.xref.status.505.2" title="505 HTTP Version Not Supported">Section 5.6.6</a>3388 <td class="left"> <a href="#status.505" id="rfc.xref.status.505.2" title="505 HTTP Version Not Supported">Section 6.6.6</a> 3389 3389 </td> 3390 3390 </tr> … … 3420 3420 <p id="rfc.section.11.3.1.p.8">Many header fields use a format including (case-insensitively) named parameters (for instance, <a href="#header.content-type" class="smpl">Content-Type</a>, defined in <a href="#header.content-type" id="rfc.xref.header.content-type.4" title="Content-Type">Section 10.9</a>). Allowing both unquoted (token) and quoted (quoted-string) syntax for the parameter value enables recipients to use existing 3421 3421 parser components. When allowing both forms, the meaning of a parameter value ought to be independent of the syntax used for 3422 it (for an example, see the notes on parameter handling for media types in <a href="#media.types" title="Media Types">Section 6.5</a>).3422 it (for an example, see the notes on parameter handling for media types in <a href="#media.types" title="Media Types">Section 7.5</a>). 3423 3423 </p> 3424 3424 <p id="rfc.section.11.3.1.p.9">Authors of specifications defining new header fields are advised to consider documenting: </p> … … 3700 3700 user. 3701 3701 </p> 3702 <p id="rfc.section.12.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 3.3.7</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used3702 <p id="rfc.section.12.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 4.3.7</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used 3703 3703 to collect data from the client. 3704 3704 </p> … … 3977 3977 </p> 3978 3978 <h2 id="rfc.section.A.2"><a href="#rfc.section.A.2">A.2</a> <a id="conversion.to.canonical.form" href="#conversion.to.canonical.form">Conversion to Canonical Form</a></h2> 3979 <p id="rfc.section.A.2.p.1">MIME requires that an Internet mail body-part be converted to canonical form prior to being transferred, as described in <a href="http://tools.ietf.org/html/rfc2049#section-4">Section 4</a> of <a href="#RFC2049" id="rfc.xref.RFC2049.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples">[RFC2049]</cite></a>. <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 6.5.1</a> of this document describes the forms allowed for subtypes of the "text" media type when transmitted over HTTP. <a href="#RFC2046" id="rfc.xref.RFC2046.4"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> requires that content with a type of "text" represent line breaks as CRLF and forbids the use of CR or LF outside of line3979 <p id="rfc.section.A.2.p.1">MIME requires that an Internet mail body-part be converted to canonical form prior to being transferred, as described in <a href="http://tools.ietf.org/html/rfc2049#section-4">Section 4</a> of <a href="#RFC2049" id="rfc.xref.RFC2049.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples">[RFC2049]</cite></a>. <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 7.5.1</a> of this document describes the forms allowed for subtypes of the "text" media type when transmitted over HTTP. <a href="#RFC2046" id="rfc.xref.RFC2046.4"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> requires that content with a type of "text" represent line breaks as CRLF and forbids the use of CR or LF outside of line 3980 3980 break sequences. HTTP allows CRLF, bare CR, and bare LF to indicate a line break within text content when a message is transmitted 3981 3981 over HTTP. 3982 3982 </p> 3983 <p id="rfc.section.A.2.p.2">Where it is possible, a proxy or gateway from HTTP to a strict MIME environment <em class="bcp14">SHOULD</em> translate all line breaks within the text media types described in <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 6.5.1</a> of this document to the RFC 2049 canonical form of CRLF. Note, however, that this might be complicated by the presence of3983 <p id="rfc.section.A.2.p.2">Where it is possible, a proxy or gateway from HTTP to a strict MIME environment <em class="bcp14">SHOULD</em> translate all line breaks within the text media types described in <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 7.5.1</a> of this document to the RFC 2049 canonical form of CRLF. Note, however, that this might be complicated by the presence of 3984 3984 a <a href="#header.content-encoding" class="smpl">Content-Encoding</a> and by the fact that HTTP allows the use of some character encodings which do not use octets 13 and 10 to represent CR and 3985 3985 LF, respectively, as is the case for some multi-byte character encodings. … … 3989 3989 </p> 3990 3990 <h2 id="rfc.section.A.3"><a href="#rfc.section.A.3">A.3</a> <a id="conversion.of.date.formats" href="#conversion.of.date.formats">Conversion of Date Formats</a></h2> 3991 <p id="rfc.section.A.3.p.1">HTTP/1.1 uses a restricted set of date formats (<a href="#http.date" title="Date/Time Formats">Section 6.1</a>) to simplify the process of date comparison. Proxies and gateways from other protocols <em class="bcp14">SHOULD</em> ensure that any <a href="#header.date" class="smpl">Date</a> header field present in a message conforms to one of the HTTP/1.1 formats and rewrite the date if necessary.3991 <p id="rfc.section.A.3.p.1">HTTP/1.1 uses a restricted set of date formats (<a href="#http.date" title="Date/Time Formats">Section 7.1</a>) to simplify the process of date comparison. Proxies and gateways from other protocols <em class="bcp14">SHOULD</em> ensure that any <a href="#header.date" class="smpl">Date</a> header field present in a message conforms to one of the HTTP/1.1 formats and rewrite the date if necessary. 3992 3992 </p> 3993 3993 <h2 id="rfc.section.A.4"><a href="#rfc.section.A.4">A.4</a> <a id="introduction.of.content-encoding" href="#introduction.of.content-encoding">Introduction of Content-Encoding</a></h2> … … 4009 4009 <p id="rfc.section.A.6.p.1">HTTP implementations which share code with MHTML <a href="#RFC2557" id="rfc.xref.RFC2557.2"><cite title="MIME Encapsulation of Aggregate Documents, such as HTML (MHTML)">[RFC2557]</cite></a> implementations need to be aware of MIME line length limitations. Since HTTP does not have this limitation, HTTP does not 4010 4010 fold long lines. MHTML messages being transported by HTTP follow all conventions of MHTML, including line length limitations 4011 and folding, canonicalization, etc., since HTTP transports all message-bodies as payload (see <a href="#multipart.types" title="Multipart Types">Section 6.5.2</a>) and does not interpret the content or any MIME header lines that might be contained therein.4011 and folding, canonicalization, etc., since HTTP transports all message-bodies as payload (see <a href="#multipart.types" title="Multipart Types">Section 7.5.2</a>) and does not interpret the content or any MIME header lines that might be contained therein. 4012 4012 </p> 4013 4013 <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a> <a id="additional.features" href="#additional.features">Additional Features</a></h1> … … 4022 4022 <p id="rfc.section.C.p.1">Introduce Method Registry. (<a href="#method.registry" title="Method Registry">Section 11.1</a>) 4023 4023 </p> 4024 <p id="rfc.section.C.p.2">Clarify definition of POST. (<a href="#POST" id="rfc.xref.POST.3" title="POST">Section 3.3.4</a>)4025 </p> 4026 <p id="rfc.section.C.p.3">Remove requirement to handle all Content-* header fields; ban use of <a href="p5-range.html#header.content-range" class="smpl">Content-Range</a> with PUT. (<a href="#PUT" id="rfc.xref.PUT.3" title="PUT">Section 3.3.5</a>)4027 </p> 4028 <p id="rfc.section.C.p.4">Take over definition of CONNECT method from <a href="#RFC2817" id="rfc.xref.RFC2817.2"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#CONNECT" id="rfc.xref.CONNECT.3" title="CONNECT">Section 3.3.8</a>)4024 <p id="rfc.section.C.p.2">Clarify definition of POST. (<a href="#POST" id="rfc.xref.POST.3" title="POST">Section 4.3.4</a>) 4025 </p> 4026 <p id="rfc.section.C.p.3">Remove requirement to handle all Content-* header fields; ban use of <a href="p5-range.html#header.content-range" class="smpl">Content-Range</a> with PUT. (<a href="#PUT" id="rfc.xref.PUT.3" title="PUT">Section 4.3.5</a>) 4027 </p> 4028 <p id="rfc.section.C.p.4">Take over definition of CONNECT method from <a href="#RFC2817" id="rfc.xref.RFC2817.2"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#CONNECT" id="rfc.xref.CONNECT.3" title="CONNECT">Section 4.3.8</a>) 4029 4029 </p> 4030 4030 <p id="rfc.section.C.p.5">Take over the Status Code Registry, previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.3"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#status.code.registry" title="Status Code Registry">Section 11.2</a>) 4031 4031 </p> 4032 <p id="rfc.section.C.p.6">Broadened the definition of <a href="#status.203" class="smpl">203 (Non-Authoritative Information)</a> to include cases of payload transformations as well. (<a href="#status.203" id="rfc.xref.status.203.3" title="203 Non-Authoritative Information">Section 5.3.4</a>)4033 </p> 4034 <p id="rfc.section.C.p.7">Status codes <a href="#status.301" class="smpl">301</a>, <a href="#status.302" class="smpl">302</a>, and <a href="#status.307" class="smpl">307</a>: removed the normative requirements on both response payloads and user interaction. (<a href="#status.3xx" id="rfc.xref.status.3xx.1" title="Redirection 3xx">Section 5.4</a>)4032 <p id="rfc.section.C.p.6">Broadened the definition of <a href="#status.203" class="smpl">203 (Non-Authoritative Information)</a> to include cases of payload transformations as well. (<a href="#status.203" id="rfc.xref.status.203.3" title="203 Non-Authoritative Information">Section 6.3.4</a>) 4033 </p> 4034 <p id="rfc.section.C.p.7">Status codes <a href="#status.301" class="smpl">301</a>, <a href="#status.302" class="smpl">302</a>, and <a href="#status.307" class="smpl">307</a>: removed the normative requirements on both response payloads and user interaction. (<a href="#status.3xx" id="rfc.xref.status.3xx.1" title="Redirection 3xx">Section 6.4</a>) 4035 4035 </p> 4036 4036 <p id="rfc.section.C.p.8">Failed to consider that there are many other request methods that are safe to automatically redirect, and further that the 4037 4037 user agent is able to make that determination based on the request method semantics. Furthermore, allow user agents to rewrite 4038 the method from POST to GET for status codes <a href="#status.301" class="smpl">301</a> and <a href="#status.302" class="smpl">302</a>. (Sections <a href="#status.301" id="rfc.xref.status.301.3" title="301 Moved Permanently"> 5.4.2</a>, <a href="#status.302" id="rfc.xref.status.302.3" title="302 Found">5.4.3</a> and <a href="#status.307" id="rfc.xref.status.307.3" title="307 Temporary Redirect">5.4.7</a>)4038 the method from POST to GET for status codes <a href="#status.301" class="smpl">301</a> and <a href="#status.302" class="smpl">302</a>. (Sections <a href="#status.301" id="rfc.xref.status.301.3" title="301 Moved Permanently">6.4.2</a>, <a href="#status.302" id="rfc.xref.status.302.3" title="302 Found">6.4.3</a> and <a href="#status.307" id="rfc.xref.status.307.3" title="307 Temporary Redirect">6.4.7</a>) 4039 4039 </p> 4040 4040 <p id="rfc.section.C.p.9">Deprecate <a href="#status.305" class="smpl">305 (Use Proxy)</a> status code, because user agents did not implement it. It used to indicate that the target resource needs to be accessed through 4041 4041 the proxy given by the <a href="#header.location" class="smpl">Location</a> field. The Location field gave the URI of the proxy. The recipient was expected to repeat this single request via the proxy. 4042 (<a href="#status.305" id="rfc.xref.status.305.3" title="305 Use Proxy">Section 5.4.5</a>)4043 </p> 4044 <p id="rfc.section.C.p.10">Define status <a href="#status.426" class="smpl">426 (Upgrade Required)</a> (this was incorporated from <a href="#RFC2817" id="rfc.xref.RFC2817.4"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>). (<a href="#status.426" id="rfc.xref.status.426.3" title="426 Upgrade Required">Section 5.5.15</a>)4042 (<a href="#status.305" id="rfc.xref.status.305.3" title="305 Use Proxy">Section 6.4.5</a>) 4043 </p> 4044 <p id="rfc.section.C.p.10">Define status <a href="#status.426" class="smpl">426 (Upgrade Required)</a> (this was incorporated from <a href="#RFC2817" id="rfc.xref.RFC2817.4"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>). (<a href="#status.426" id="rfc.xref.status.426.3" title="426 Upgrade Required">Section 6.5.15</a>) 4045 4045 </p> 4046 4046 <p id="rfc.section.C.p.11">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 10</a>) … … 4061 4061 <p id="rfc.section.C.p.17">In the description of the <a href="#header.server" class="smpl">Server</a> header field, the <a href="p1-messaging.html#header.via" class="smpl">Via</a> field was described as a SHOULD. The requirement was and is stated correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.46"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 10.17</a>) 4062 4062 </p> 4063 <p id="rfc.section.C.p.18">Clarify contexts that charset is used in. (<a href="#character.sets" title="Character Encodings (charset)">Section 6.3</a>)4063 <p id="rfc.section.C.p.18">Clarify contexts that charset is used in. (<a href="#character.sets" title="Character Encodings (charset)">Section 7.3</a>) 4064 4064 </p> 4065 4065 <p id="rfc.section.C.p.19">Registration of Content Codings now requires IETF Review (<a href="#content.coding.registry" title="Content Coding Registry">Section 11.4</a>) 4066 4066 </p> 4067 4067 <p id="rfc.section.C.p.20">Remove the default character encoding of "ISO-8859-1" for text media types; the default now is whatever the media type definition 4068 says. (<a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 6.5.1</a>)4068 says. (<a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 7.5.1</a>) 4069 4069 </p> 4070 4070 <p id="rfc.section.C.p.21">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 10</a>) … … 4805 4805 <ul class="ind"> 4806 4806 <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul> 4807 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1"> 5.1</a>, <a href="#rfc.iref.22"><b>5.2.1</b></a>, <a href="#rfc.xref.status.100.2">11.2.3</a></li>4807 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">6.1</a>, <a href="#rfc.iref.24"><b>6.2.1</b></a>, <a href="#rfc.xref.status.100.2">11.2.3</a></li> 4808 4808 <li>100-continue (expect value) <a href="#rfc.iref.142"><b>10.11</b></a></li> 4809 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1"> 5.1</a>, <a href="#rfc.iref.23"><b>5.2.2</b></a>, <a href="#rfc.xref.status.101.2">11.2.3</a></li>4810 <li>1xx Informational (status code class) <a href="#rfc.iref.2 1"><b>5.2</b></a></li>4809 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">6.1</a>, <a href="#rfc.iref.25"><b>6.2.2</b></a>, <a href="#rfc.xref.status.101.2">11.2.3</a></li> 4810 <li>1xx Informational (status code class) <a href="#rfc.iref.23"><b>6.2</b></a></li> 4811 4811 </ul> 4812 4812 </li> 4813 4813 <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul> 4814 <li>200 OK (status code) <a href="#rfc.xref.status.200.1"> 5.1</a>, <a href="#rfc.iref.25"><b>5.3.1</b></a>, <a href="#rfc.xref.status.200.2">11.2.3</a></li>4815 <li>201 Created (status code) <a href="#rfc.xref.status.201.1"> 5.1</a>, <a href="#rfc.iref.26"><b>5.3.2</b></a>, <a href="#rfc.xref.status.201.2">11.2.3</a></li>4816 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1"> 5.1</a>, <a href="#rfc.iref.27"><b>5.3.3</b></a>, <a href="#rfc.xref.status.202.2">11.2.3</a></li>4817 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1"> 5.1</a>, <a href="#rfc.iref.28"><b>5.3.4</b></a>, <a href="#rfc.xref.status.203.2">11.2.3</a>, <a href="#rfc.xref.status.203.3">C</a></li>4818 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1"> 5.1</a>, <a href="#rfc.iref.29"><b>5.3.5</b></a>, <a href="#rfc.xref.status.204.2">11.2.3</a></li>4819 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1"> 5.1</a>, <a href="#rfc.iref.30"><b>5.3.6</b></a>, <a href="#rfc.xref.status.205.2">11.2.3</a></li>4820 <li>2xx Successful (status code class) <a href="#rfc.iref.2 4"><b>5.3</b></a></li>4814 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">6.1</a>, <a href="#rfc.iref.27"><b>6.3.1</b></a>, <a href="#rfc.xref.status.200.2">11.2.3</a></li> 4815 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">6.1</a>, <a href="#rfc.iref.28"><b>6.3.2</b></a>, <a href="#rfc.xref.status.201.2">11.2.3</a></li> 4816 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">6.1</a>, <a href="#rfc.iref.29"><b>6.3.3</b></a>, <a href="#rfc.xref.status.202.2">11.2.3</a></li> 4817 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">6.1</a>, <a href="#rfc.iref.30"><b>6.3.4</b></a>, <a href="#rfc.xref.status.203.2">11.2.3</a>, <a href="#rfc.xref.status.203.3">C</a></li> 4818 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">6.1</a>, <a href="#rfc.iref.31"><b>6.3.5</b></a>, <a href="#rfc.xref.status.204.2">11.2.3</a></li> 4819 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">6.1</a>, <a href="#rfc.iref.32"><b>6.3.6</b></a>, <a href="#rfc.xref.status.205.2">11.2.3</a></li> 4820 <li>2xx Successful (status code class) <a href="#rfc.iref.26"><b>6.3</b></a></li> 4821 4821 </ul> 4822 4822 </li> 4823 4823 <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul> 4824 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1"> 5.1</a>, <a href="#rfc.iref.32"><b>5.4.1</b></a>, <a href="#rfc.xref.status.300.2">11.2.3</a></li>4825 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1"> 5.1</a>, <a href="#rfc.iref.33"><b>5.4.2</b></a>, <a href="#rfc.xref.status.301.2">11.2.3</a>, <a href="#rfc.xref.status.301.3">C</a></li>4826 <li>302 Found (status code) <a href="#rfc.xref.status.302.1"> 5.1</a>, <a href="#rfc.iref.34"><b>5.4.3</b></a>, <a href="#rfc.xref.status.302.2">11.2.3</a>, <a href="#rfc.xref.status.302.3">C</a></li>4827 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1"> 5.1</a>, <a href="#rfc.iref.35"><b>5.4.4</b></a>, <a href="#rfc.xref.status.303.2">11.2.3</a></li>4828 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1"> 5.1</a>, <a href="#rfc.iref.36"><b>5.4.5</b></a>, <a href="#rfc.xref.status.305.2">11.2.3</a>, <a href="#rfc.xref.status.305.3">C</a></li>4829 <li>306 (Unused) (status code) <a href="#rfc.iref.3 7"><b>5.4.6</b></a>, <a href="#rfc.xref.status.306.1">11.2.3</a></li>4830 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1"> 5.1</a>, <a href="#rfc.iref.38"><b>5.4.7</b></a>, <a href="#rfc.xref.status.307.2">11.2.3</a>, <a href="#rfc.xref.status.307.3">C</a></li>4831 <li>3xx Redirection (status code class) <a href="#rfc.iref.3 1"><b>5.4</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li>4824 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">6.1</a>, <a href="#rfc.iref.34"><b>6.4.1</b></a>, <a href="#rfc.xref.status.300.2">11.2.3</a></li> 4825 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">6.1</a>, <a href="#rfc.iref.35"><b>6.4.2</b></a>, <a href="#rfc.xref.status.301.2">11.2.3</a>, <a href="#rfc.xref.status.301.3">C</a></li> 4826 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">6.1</a>, <a href="#rfc.iref.36"><b>6.4.3</b></a>, <a href="#rfc.xref.status.302.2">11.2.3</a>, <a href="#rfc.xref.status.302.3">C</a></li> 4827 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">6.1</a>, <a href="#rfc.iref.37"><b>6.4.4</b></a>, <a href="#rfc.xref.status.303.2">11.2.3</a></li> 4828 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">6.1</a>, <a href="#rfc.iref.38"><b>6.4.5</b></a>, <a href="#rfc.xref.status.305.2">11.2.3</a>, <a href="#rfc.xref.status.305.3">C</a></li> 4829 <li>306 (Unused) (status code) <a href="#rfc.iref.39"><b>6.4.6</b></a>, <a href="#rfc.xref.status.306.1">11.2.3</a></li> 4830 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">6.1</a>, <a href="#rfc.iref.40"><b>6.4.7</b></a>, <a href="#rfc.xref.status.307.2">11.2.3</a>, <a href="#rfc.xref.status.307.3">C</a></li> 4831 <li>3xx Redirection (status code class) <a href="#rfc.iref.33"><b>6.4</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li> 4832 4832 </ul> 4833 4833 </li> 4834 4834 <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul> 4835 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1"> 5.1</a>, <a href="#rfc.iref.40"><b>5.5.1</b></a>, <a href="#rfc.xref.status.400.2">11.2.3</a></li>4836 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1"> 5.1</a>, <a href="#rfc.iref.41"><b>5.5.2</b></a>, <a href="#rfc.xref.status.402.2">11.2.3</a></li>4837 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1"> 5.1</a>, <a href="#rfc.iref.42"><b>5.5.3</b></a>, <a href="#rfc.xref.status.403.2">11.2.3</a></li>4838 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1"> 5.1</a>, <a href="#rfc.iref.43"><b>5.5.4</b></a>, <a href="#rfc.xref.status.404.2">11.2.3</a></li>4839 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1"> 5.1</a>, <a href="#rfc.iref.44"><b>5.5.5</b></a>, <a href="#rfc.xref.status.405.2">11.2.3</a></li>4840 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1"> 5.1</a>, <a href="#rfc.iref.45"><b>5.5.6</b></a>, <a href="#rfc.xref.status.406.2">11.2.3</a></li>4841 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1"> 5.1</a>, <a href="#rfc.iref.46"><b>5.5.7</b></a>, <a href="#rfc.xref.status.408.2">11.2.3</a></li>4842 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1"> 5.1</a>, <a href="#rfc.iref.47"><b>5.5.8</b></a>, <a href="#rfc.xref.status.409.2">11.2.3</a></li>4843 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1"> 5.1</a>, <a href="#rfc.iref.48"><b>5.5.9</b></a>, <a href="#rfc.xref.status.410.2">11.2.3</a></li>4844 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1"> 5.1</a>, <a href="#rfc.iref.49"><b>5.5.10</b></a>, <a href="#rfc.xref.status.411.2">11.2.3</a></li>4845 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1"> 5.1</a>, <a href="#rfc.iref.50"><b>5.5.11</b></a>, <a href="#rfc.xref.status.413.2">11.2.3</a></li>4846 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1"> 5.1</a>, <a href="#rfc.iref.51"><b>5.5.12</b></a>, <a href="#rfc.xref.status.414.2">11.2.3</a></li>4847 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1"> 5.1</a>, <a href="#rfc.iref.52"><b>5.5.13</b></a>, <a href="#rfc.xref.status.415.2">11.2.3</a></li>4848 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1"> 5.1</a>, <a href="#rfc.iref.53"><b>5.5.14</b></a>, <a href="#rfc.xref.status.417.2">11.2.3</a></li>4849 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1"> 5.1</a>, <a href="#rfc.iref.54"><b>5.5.15</b></a>, <a href="#rfc.xref.status.426.2">11.2.3</a>, <a href="#rfc.xref.status.426.3">C</a></li>4850 <li>4xx Client Error (status code class) <a href="#rfc.iref. 39"><b>5.5</b></a></li>4835 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">6.1</a>, <a href="#rfc.iref.42"><b>6.5.1</b></a>, <a href="#rfc.xref.status.400.2">11.2.3</a></li> 4836 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">6.1</a>, <a href="#rfc.iref.43"><b>6.5.2</b></a>, <a href="#rfc.xref.status.402.2">11.2.3</a></li> 4837 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">6.1</a>, <a href="#rfc.iref.44"><b>6.5.3</b></a>, <a href="#rfc.xref.status.403.2">11.2.3</a></li> 4838 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">6.1</a>, <a href="#rfc.iref.45"><b>6.5.4</b></a>, <a href="#rfc.xref.status.404.2">11.2.3</a></li> 4839 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">6.1</a>, <a href="#rfc.iref.46"><b>6.5.5</b></a>, <a href="#rfc.xref.status.405.2">11.2.3</a></li> 4840 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">6.1</a>, <a href="#rfc.iref.47"><b>6.5.6</b></a>, <a href="#rfc.xref.status.406.2">11.2.3</a></li> 4841 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">6.1</a>, <a href="#rfc.iref.48"><b>6.5.7</b></a>, <a href="#rfc.xref.status.408.2">11.2.3</a></li> 4842 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">6.1</a>, <a href="#rfc.iref.49"><b>6.5.8</b></a>, <a href="#rfc.xref.status.409.2">11.2.3</a></li> 4843 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">6.1</a>, <a href="#rfc.iref.50"><b>6.5.9</b></a>, <a href="#rfc.xref.status.410.2">11.2.3</a></li> 4844 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">6.1</a>, <a href="#rfc.iref.51"><b>6.5.10</b></a>, <a href="#rfc.xref.status.411.2">11.2.3</a></li> 4845 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">6.1</a>, <a href="#rfc.iref.52"><b>6.5.11</b></a>, <a href="#rfc.xref.status.413.2">11.2.3</a></li> 4846 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">6.1</a>, <a href="#rfc.iref.53"><b>6.5.12</b></a>, <a href="#rfc.xref.status.414.2">11.2.3</a></li> 4847 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">6.1</a>, <a href="#rfc.iref.54"><b>6.5.13</b></a>, <a href="#rfc.xref.status.415.2">11.2.3</a></li> 4848 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">6.1</a>, <a href="#rfc.iref.55"><b>6.5.14</b></a>, <a href="#rfc.xref.status.417.2">11.2.3</a></li> 4849 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">6.1</a>, <a href="#rfc.iref.56"><b>6.5.15</b></a>, <a href="#rfc.xref.status.426.2">11.2.3</a>, <a href="#rfc.xref.status.426.3">C</a></li> 4850 <li>4xx Client Error (status code class) <a href="#rfc.iref.41"><b>6.5</b></a></li> 4851 4851 </ul> 4852 4852 </li> 4853 4853 <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul> 4854 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1"> 5.1</a>, <a href="#rfc.iref.56"><b>5.6.1</b></a>, <a href="#rfc.xref.status.500.2">11.2.3</a></li>4855 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1"> 5.1</a>, <a href="#rfc.iref.57"><b>5.6.2</b></a>, <a href="#rfc.xref.status.501.2">11.2.3</a></li>4856 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1"> 5.1</a>, <a href="#rfc.iref.58"><b>5.6.3</b></a>, <a href="#rfc.xref.status.502.2">11.2.3</a></li>4857 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1"> 5.1</a>, <a href="#rfc.iref.59"><b>5.6.4</b></a>, <a href="#rfc.xref.status.503.2">11.2.3</a></li>4858 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1"> 5.1</a>, <a href="#rfc.iref.60"><b>5.6.5</b></a>, <a href="#rfc.xref.status.504.2">11.2.3</a></li>4859 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1"> 5.1</a>, <a href="#rfc.iref.61"><b>5.6.6</b></a>, <a href="#rfc.xref.status.505.2">11.2.3</a></li>4860 <li>5xx Server Error (status code class) <a href="#rfc.iref.5 5"><b>5.6</b></a></li>4854 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">6.1</a>, <a href="#rfc.iref.58"><b>6.6.1</b></a>, <a href="#rfc.xref.status.500.2">11.2.3</a></li> 4855 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">6.1</a>, <a href="#rfc.iref.59"><b>6.6.2</b></a>, <a href="#rfc.xref.status.501.2">11.2.3</a></li> 4856 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">6.1</a>, <a href="#rfc.iref.60"><b>6.6.3</b></a>, <a href="#rfc.xref.status.502.2">11.2.3</a></li> 4857 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">6.1</a>, <a href="#rfc.iref.61"><b>6.6.4</b></a>, <a href="#rfc.xref.status.503.2">11.2.3</a></li> 4858 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">6.1</a>, <a href="#rfc.iref.62"><b>6.6.5</b></a>, <a href="#rfc.xref.status.504.2">11.2.3</a></li> 4859 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">6.1</a>, <a href="#rfc.iref.63"><b>6.6.6</b></a>, <a href="#rfc.xref.status.505.2">11.2.3</a></li> 4860 <li>5xx Server Error (status code class) <a href="#rfc.iref.57"><b>6.6</b></a></li> 4861 4861 </ul> 4862 4862 </li> 4863 4863 <li><a id="rfc.index.A" href="#rfc.index.A"><b>A</b></a><ul> 4864 <li>Accept header field <a href="#rfc.xref.header.accept.1"> 4.5</a>, <a href="#rfc.xref.header.accept.2">6.5</a>, <a href="#rfc.xref.header.accept.3">9.1</a>, <a href="#rfc.iref.a.1"><b>10.1</b></a>, <a href="#rfc.xref.header.accept.4">11.3.2</a></li>4865 <li>Accept-Charset header field <a href="#rfc.xref.header.accept-charset.1"> 4.5</a>, <a href="#rfc.xref.header.accept-charset.2">9.1</a>, <a href="#rfc.iref.a.2"><b>10.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">11.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li>4866 <li>Accept-Encoding header field <a href="#rfc.xref.header.accept-encoding.1"> 4.5</a>, <a href="#rfc.xref.header.accept-encoding.2">6.4</a>, <a href="#rfc.xref.header.accept-encoding.3">9.1</a>, <a href="#rfc.iref.a.3"><b>10.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">11.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">11.4.2</a></li>4867 <li>Accept-Language header field <a href="#rfc.xref.header.accept-language.1"> 4.5</a>, <a href="#rfc.xref.header.accept-language.2">9.1</a>, <a href="#rfc.iref.a.4"><b>10.4</b></a>, <a href="#rfc.xref.header.accept-language.3">11.3.2</a></li>4868 <li>Allow header field <a href="#rfc.xref.header.allow.1"> 3.1</a>, <a href="#rfc.xref.header.allow.2">4.6</a>, <a href="#rfc.iref.a.5"><b>10.5</b></a>, <a href="#rfc.xref.header.allow.3">11.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li>4864 <li>Accept header field <a href="#rfc.xref.header.accept.1">5.5</a>, <a href="#rfc.xref.header.accept.2">7.5</a>, <a href="#rfc.xref.header.accept.3">9.1</a>, <a href="#rfc.iref.a.1"><b>10.1</b></a>, <a href="#rfc.xref.header.accept.4">11.3.2</a></li> 4865 <li>Accept-Charset header field <a href="#rfc.xref.header.accept-charset.1">5.5</a>, <a href="#rfc.xref.header.accept-charset.2">9.1</a>, <a href="#rfc.iref.a.2"><b>10.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">11.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li> 4866 <li>Accept-Encoding header field <a href="#rfc.xref.header.accept-encoding.1">5.5</a>, <a href="#rfc.xref.header.accept-encoding.2">7.4</a>, <a href="#rfc.xref.header.accept-encoding.3">9.1</a>, <a href="#rfc.iref.a.3"><b>10.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">11.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">11.4.2</a></li> 4867 <li>Accept-Language header field <a href="#rfc.xref.header.accept-language.1">5.5</a>, <a href="#rfc.xref.header.accept-language.2">9.1</a>, <a href="#rfc.iref.a.4"><b>10.4</b></a>, <a href="#rfc.xref.header.accept-language.3">11.3.2</a></li> 4868 <li>Allow header field <a href="#rfc.xref.header.allow.1">4.1</a>, <a href="#rfc.xref.header.allow.2">5.6</a>, <a href="#rfc.iref.a.5"><b>10.5</b></a>, <a href="#rfc.xref.header.allow.3">11.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li> 4869 4869 </ul> 4870 4870 </li> 4871 4871 <li><a id="rfc.index.C" href="#rfc.index.C"><b>C</b></a><ul> 4872 <li>cacheable <a href="#rfc.iref.c.2"><b> 3.2.3</b></a></li>4872 <li>cacheable <a href="#rfc.iref.c.2"><b>4.2.3</b></a></li> 4873 4873 <li>Coding Format 4874 4874 <ul> 4875 <li>compress <a href="#rfc.iref.c.5"> 6.4</a></li>4876 <li>deflate <a href="#rfc.iref.c.6"> 6.4</a></li>4877 <li>gzip <a href="#rfc.iref.c.7"> 6.4</a></li>4875 <li>compress <a href="#rfc.iref.c.5">7.4</a></li> 4876 <li>deflate <a href="#rfc.iref.c.6">7.4</a></li> 4877 <li>gzip <a href="#rfc.iref.c.7">7.4</a></li> 4878 4878 </ul> 4879 4879 </li> 4880 <li>compress (Coding Format) <a href="#rfc.iref.c.4"> 6.4</a></li>4881 <li>CONNECT method <a href="#rfc.xref.CONNECT.1"> 3.1</a>, <a href="#rfc.iref.c.3"><b>3.3.8</b></a>, <a href="#rfc.xref.CONNECT.2">11.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li>4880 <li>compress (Coding Format) <a href="#rfc.iref.c.4">7.4</a></li> 4881 <li>CONNECT method <a href="#rfc.xref.CONNECT.1">4.1</a>, <a href="#rfc.iref.c.3"><b>4.3.8</b></a>, <a href="#rfc.xref.CONNECT.2">11.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li> 4882 4882 <li>content negotiation <a href="#rfc.iref.c.1">1</a></li> 4883 <li>Content-Encoding header field <a href="#rfc.xref.header.content-encoding.1"> 6.4</a>, <a href="#rfc.xref.header.content-encoding.2">8.2</a>, <a href="#rfc.iref.c.8"><b>10.6</b></a>, <a href="#rfc.xref.header.content-encoding.3">11.3.2</a></li>4884 <li>Content-Language header field <a href="#rfc.xref.header.content-language.1"> 8.2</a>, <a href="#rfc.iref.c.9"><b>10.7</b></a>, <a href="#rfc.xref.header.content-language.2">11.3.2</a></li>4885 <li>Content-Location header field <a href="#rfc.xref.header.content-location.1">3. 3.4</a>, <a href="#rfc.xref.header.content-location.2">8.2</a>, <a href="#rfc.iref.c.10"><b>10.8</b></a>, <a href="#rfc.xref.header.content-location.3">10.13</a>, <a href="#rfc.xref.header.content-location.4">11.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li>4883 <li>Content-Encoding header field <a href="#rfc.xref.header.content-encoding.1">3.2</a>, <a href="#rfc.xref.header.content-encoding.2">7.4</a>, <a href="#rfc.iref.c.8"><b>10.6</b></a>, <a href="#rfc.xref.header.content-encoding.3">11.3.2</a></li> 4884 <li>Content-Language header field <a href="#rfc.xref.header.content-language.1">3.2</a>, <a href="#rfc.iref.c.9"><b>10.7</b></a>, <a href="#rfc.xref.header.content-language.2">11.3.2</a></li> 4885 <li>Content-Location header field <a href="#rfc.xref.header.content-location.1">3.2</a>, <a href="#rfc.xref.header.content-location.2">4.3.4</a>, <a href="#rfc.iref.c.10"><b>10.8</b></a>, <a href="#rfc.xref.header.content-location.3">10.13</a>, <a href="#rfc.xref.header.content-location.4">11.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li> 4886 4886 <li>Content-Transfer-Encoding header field <a href="#rfc.iref.c.12">A.5</a>, <a href="#rfc.xref.no.content-transfer-encoding.1">C</a></li> 4887 <li>Content-Type header field <a href="#rfc.xref.header.content-type.1"> 5</a>, <a href="#rfc.xref.header.content-type.2">6.5</a>, <a href="#rfc.xref.header.content-type.3">8.2</a>, <a href="#rfc.iref.c.11"><b>10.9</b></a>, <a href="#rfc.xref.header.content-type.4">11.3.1</a>, <a href="#rfc.xref.header.content-type.5">11.3.2</a></li>4887 <li>Content-Type header field <a href="#rfc.xref.header.content-type.1">3.2</a>, <a href="#rfc.xref.header.content-type.2">6</a>, <a href="#rfc.xref.header.content-type.3">7.5</a>, <a href="#rfc.iref.c.11"><b>10.9</b></a>, <a href="#rfc.xref.header.content-type.4">11.3.1</a>, <a href="#rfc.xref.header.content-type.5">11.3.2</a></li> 4888 4888 </ul> 4889 4889 </li> 4890 4890 <li><a id="rfc.index.D" href="#rfc.index.D"><b>D</b></a><ul> 4891 <li>Date header field <a href="#rfc.xref.header.date.1"> 4.6</a>, <a href="#rfc.iref.d.3"><b>10.10</b></a>, <a href="#rfc.xref.header.date.2">11.3.2</a></li>4892 <li>deflate (Coding Format) <a href="#rfc.iref.d.2"> 6.4</a></li>4893 <li>DELETE method <a href="#rfc.xref.DELETE.1"> 3.1</a>, <a href="#rfc.iref.d.1"><b>3.3.6</b></a>, <a href="#rfc.xref.DELETE.2">11.1.3</a></li>4891 <li>Date header field <a href="#rfc.xref.header.date.1">5.6</a>, <a href="#rfc.iref.d.3"><b>10.10</b></a>, <a href="#rfc.xref.header.date.2">11.3.2</a></li> 4892 <li>deflate (Coding Format) <a href="#rfc.iref.d.2">7.4</a></li> 4893 <li>DELETE method <a href="#rfc.xref.DELETE.1">4.1</a>, <a href="#rfc.iref.d.1"><b>4.3.6</b></a>, <a href="#rfc.xref.DELETE.2">11.1.3</a></li> 4894 4894 </ul> 4895 4895 </li> 4896 4896 <li><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul> 4897 <li>Expect header field <a href="#rfc.xref.header.expect.1"> 4.5</a>, <a href="#rfc.xref.header.expect.2">5.5.14</a>, <a href="#rfc.iref.e.1"><b>10.11</b></a>, <a href="#rfc.xref.header.expect.3">11.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li>4897 <li>Expect header field <a href="#rfc.xref.header.expect.1">5.5</a>, <a href="#rfc.xref.header.expect.2">6.5.14</a>, <a href="#rfc.iref.e.1"><b>10.11</b></a>, <a href="#rfc.xref.header.expect.3">11.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li> 4898 4898 <li>Expect Values 4899 4899 <ul> … … 4904 4904 </li> 4905 4905 <li><a id="rfc.index.F" href="#rfc.index.F"><b>F</b></a><ul> 4906 <li>From header field <a href="#rfc.xref.header.from.1"> 4.5</a>, <a href="#rfc.iref.f.1"><b>10.12</b></a>, <a href="#rfc.xref.header.from.2">11.3.2</a></li>4906 <li>From header field <a href="#rfc.xref.header.from.1">5.5</a>, <a href="#rfc.iref.f.1"><b>10.12</b></a>, <a href="#rfc.xref.header.from.2">11.3.2</a></li> 4907 4907 </ul> 4908 4908 </li> 4909 4909 <li><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul> 4910 <li>GET method <a href="#rfc.xref.GET.1"> 3.1</a>, <a href="#rfc.iref.g.2"><b>3.3.2</b></a>, <a href="#rfc.xref.GET.2">11.1.3</a></li>4910 <li>GET method <a href="#rfc.xref.GET.1">4.1</a>, <a href="#rfc.iref.g.2"><b>4.3.2</b></a>, <a href="#rfc.xref.GET.2">11.1.3</a></li> 4911 4911 <li><tt>Grammar</tt> 4912 4912 <ul> … … 4918 4918 <li><tt>accept-params</tt> <a href="#rfc.iref.g.35"><b>10.1</b></a></li> 4919 4919 <li><tt>Allow</tt> <a href="#rfc.iref.g.42"><b>10.5</b></a></li> 4920 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.18"><b> 6.1</b></a></li>4921 <li><tt>attribute</tt> <a href="#rfc.iref.g.28"><b> 6.5</b></a></li>4922 <li><tt>charset</tt> <a href="#rfc.iref.g.21"><b> 6.3</b></a></li>4920 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.18"><b>7.1</b></a></li> 4921 <li><tt>attribute</tt> <a href="#rfc.iref.g.28"><b>7.5</b></a></li> 4922 <li><tt>charset</tt> <a href="#rfc.iref.g.21"><b>7.3</b></a></li> 4923 4923 <li><tt>codings</tt> <a href="#rfc.iref.g.39"><b>10.3</b></a></li> 4924 <li><tt>content-coding</tt> <a href="#rfc.iref.g.22"><b> 6.4</b></a></li>4924 <li><tt>content-coding</tt> <a href="#rfc.iref.g.22"><b>7.4</b></a></li> 4925 4925 <li><tt>Content-Encoding</tt> <a href="#rfc.iref.g.43"><b>10.6</b></a></li> 4926 4926 <li><tt>Content-Language</tt> <a href="#rfc.iref.g.44"><b>10.7</b></a></li> … … 4928 4928 <li><tt>Content-Type</tt> <a href="#rfc.iref.g.46"><b>10.9</b></a></li> 4929 4929 <li><tt>Date</tt> <a href="#rfc.iref.g.47"><b>10.10</b></a></li> 4930 <li><tt>date1</tt> <a href="#rfc.iref.g.5"><b> 6.1</b></a></li>4931 <li><tt>day</tt> <a href="#rfc.iref.g.12"><b> 6.1</b></a></li>4932 <li><tt>day-name</tt> <a href="#rfc.iref.g.10"><b> 6.1</b></a></li>4933 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.11"><b> 6.1</b></a></li>4930 <li><tt>date1</tt> <a href="#rfc.iref.g.5"><b>7.1</b></a></li> 4931 <li><tt>day</tt> <a href="#rfc.iref.g.12"><b>7.1</b></a></li> 4932 <li><tt>day-name</tt> <a href="#rfc.iref.g.10"><b>7.1</b></a></li> 4933 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.11"><b>7.1</b></a></li> 4934 4934 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.58"><b>10.16</b></a></li> 4935 4935 <li><tt>Expect</tt> <a href="#rfc.iref.g.48"><b>10.11</b></a></li> … … 4939 4939 <li><tt>expectation</tt> <a href="#rfc.iref.g.49"><b>10.11</b></a></li> 4940 4940 <li><tt>From</tt> <a href="#rfc.iref.g.53"><b>10.12</b></a></li> 4941 <li><tt>GMT</tt> <a href="#rfc.iref.g.15"><b> 6.1</b></a></li>4942 <li><tt>hour</tt> <a href="#rfc.iref.g.7"><b> 6.1</b></a></li>4943 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.3"><b> 6.1</b></a></li>4941 <li><tt>GMT</tt> <a href="#rfc.iref.g.15"><b>7.1</b></a></li> 4942 <li><tt>hour</tt> <a href="#rfc.iref.g.7"><b>7.1</b></a></li> 4943 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.3"><b>7.1</b></a></li> 4944 4944 <li><tt>language-range</tt> <a href="#rfc.iref.g.41"><b>10.4</b></a></li> 4945 <li><tt>language-tag</tt> <a href="#rfc.iref.g.30"><b> 6.6</b></a></li>4945 <li><tt>language-tag</tt> <a href="#rfc.iref.g.30"><b>7.6</b></a></li> 4946 4946 <li><tt>Location</tt> <a href="#rfc.iref.g.54"><b>10.13</b></a></li> 4947 4947 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.55"><b>10.14</b></a></li> 4948 4948 <li><tt>media-range</tt> <a href="#rfc.iref.g.34"><b>10.1</b></a></li> 4949 <li><tt>media-type</tt> <a href="#rfc.iref.g.24"><b> 6.5</b></a></li>4950 <li><tt>method</tt> <a href="#rfc.iref.g.1"><b> 3.1</b></a></li>4949 <li><tt>media-type</tt> <a href="#rfc.iref.g.24"><b>7.5</b></a></li> 4950 <li><tt>method</tt> <a href="#rfc.iref.g.1"><b>4.1</b></a></li> 4951 4951 <li><tt>MIME-Version</tt> <a href="#rfc.iref.g.61"><b>A.1</b></a></li> 4952 <li><tt>minute</tt> <a href="#rfc.iref.g.8"><b> 6.1</b></a></li>4953 <li><tt>month</tt> <a href="#rfc.iref.g.13"><b> 6.1</b></a></li>4954 <li><tt>obs-date</tt> <a href="#rfc.iref.g.16"><b> 6.1</b></a></li>4955 <li><tt>parameter</tt> <a href="#rfc.iref.g.27"><b> 6.5</b></a></li>4956 <li><tt>product</tt> <a href="#rfc.iref.g.19"><b> 6.2</b></a></li>4957 <li><tt>product-version</tt> <a href="#rfc.iref.g.20"><b> 6.2</b></a></li>4952 <li><tt>minute</tt> <a href="#rfc.iref.g.8"><b>7.1</b></a></li> 4953 <li><tt>month</tt> <a href="#rfc.iref.g.13"><b>7.1</b></a></li> 4954 <li><tt>obs-date</tt> <a href="#rfc.iref.g.16"><b>7.1</b></a></li> 4955 <li><tt>parameter</tt> <a href="#rfc.iref.g.27"><b>7.5</b></a></li> 4956 <li><tt>product</tt> <a href="#rfc.iref.g.19"><b>7.2</b></a></li> 4957 <li><tt>product-version</tt> <a href="#rfc.iref.g.20"><b>7.2</b></a></li> 4958 4958 <li><tt>qvalue</tt> <a href="#rfc.iref.g.32"><b>9.3</b></a></li> 4959 4959 <li><tt>Referer</tt> <a href="#rfc.iref.g.56"><b>10.15</b></a></li> 4960 4960 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.57"><b>10.16</b></a></li> 4961 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.4"><b> 6.1</b></a></li>4962 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.17"><b> 6.1</b></a></li>4963 <li><tt>second</tt> <a href="#rfc.iref.g.9"><b> 6.1</b></a></li>4961 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.4"><b>7.1</b></a></li> 4962 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.17"><b>7.1</b></a></li> 4963 <li><tt>second</tt> <a href="#rfc.iref.g.9"><b>7.1</b></a></li> 4964 4964 <li><tt>Server</tt> <a href="#rfc.iref.g.59"><b>10.17</b></a></li> 4965 <li><tt>subtype</tt> <a href="#rfc.iref.g.26"><b> 6.5</b></a></li>4966 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.6"><b> 6.1</b></a></li>4967 <li><tt>type</tt> <a href="#rfc.iref.g.25"><b> 6.5</b></a></li>4965 <li><tt>subtype</tt> <a href="#rfc.iref.g.26"><b>7.5</b></a></li> 4966 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.6"><b>7.1</b></a></li> 4967 <li><tt>type</tt> <a href="#rfc.iref.g.25"><b>7.5</b></a></li> 4968 4968 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.60"><b>10.18</b></a></li> 4969 <li><tt>value</tt> <a href="#rfc.iref.g.29"><b> 6.5</b></a></li>4969 <li><tt>value</tt> <a href="#rfc.iref.g.29"><b>7.5</b></a></li> 4970 4970 <li><tt>weight</tt> <a href="#rfc.iref.g.31"><b>9.3</b></a></li> 4971 <li><tt>year</tt> <a href="#rfc.iref.g.14"><b> 6.1</b></a></li>4971 <li><tt>year</tt> <a href="#rfc.iref.g.14"><b>7.1</b></a></li> 4972 4972 </ul> 4973 4973 </li> 4974 <li>gzip (Coding Format) <a href="#rfc.iref.g.23"> 6.4</a></li>4974 <li>gzip (Coding Format) <a href="#rfc.iref.g.23">7.4</a></li> 4975 4975 </ul> 4976 4976 </li> 4977 4977 <li><a id="rfc.index.H" href="#rfc.index.H"><b>H</b></a><ul> 4978 <li>HEAD method <a href="#rfc.xref.HEAD.1"> 3.1</a>, <a href="#rfc.iref.h.1"><b>3.3.3</b></a>, <a href="#rfc.xref.HEAD.2">11.1.3</a></li>4978 <li>HEAD method <a href="#rfc.xref.HEAD.1">4.1</a>, <a href="#rfc.iref.h.1"><b>4.3.3</b></a>, <a href="#rfc.xref.HEAD.2">11.1.3</a></li> 4979 4979 <li>Header Fields 4980 4980 <ul> 4981 <li>Accept <a href="#rfc.xref.header.accept.1"> 4.5</a>, <a href="#rfc.xref.header.accept.2">6.5</a>, <a href="#rfc.xref.header.accept.3">9.1</a>, <a href="#rfc.iref.h.2"><b>10.1</b></a>, <a href="#rfc.xref.header.accept.4">11.3.2</a></li>4982 <li>Accept-Charset <a href="#rfc.xref.header.accept-charset.1"> 4.5</a>, <a href="#rfc.xref.header.accept-charset.2">9.1</a>, <a href="#rfc.iref.h.3"><b>10.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">11.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li>4983 <li>Accept-Encoding <a href="#rfc.xref.header.accept-encoding.1"> 4.5</a>, <a href="#rfc.xref.header.accept-encoding.2">6.4</a>, <a href="#rfc.xref.header.accept-encoding.3">9.1</a>, <a href="#rfc.iref.h.4"><b>10.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">11.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">11.4.2</a></li>4984 <li>Accept-Language <a href="#rfc.xref.header.accept-language.1"> 4.5</a>, <a href="#rfc.xref.header.accept-language.2">9.1</a>, <a href="#rfc.iref.h.5"><b>10.4</b></a>, <a href="#rfc.xref.header.accept-language.3">11.3.2</a></li>4985 <li>Allow <a href="#rfc.xref.header.allow.1"> 3.1</a>, <a href="#rfc.xref.header.allow.2">4.6</a>, <a href="#rfc.iref.h.6"><b>10.5</b></a>, <a href="#rfc.xref.header.allow.3">11.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li>4986 <li>Content-Encoding <a href="#rfc.xref.header.content-encoding.1"> 6.4</a>, <a href="#rfc.xref.header.content-encoding.2">8.2</a>, <a href="#rfc.iref.h.7"><b>10.6</b></a>, <a href="#rfc.xref.header.content-encoding.3">11.3.2</a></li>4987 <li>Content-Language <a href="#rfc.xref.header.content-language.1"> 8.2</a>, <a href="#rfc.iref.h.8"><b>10.7</b></a>, <a href="#rfc.xref.header.content-language.2">11.3.2</a></li>4988 <li>Content-Location <a href="#rfc.xref.header.content-location.1">3. 3.4</a>, <a href="#rfc.xref.header.content-location.2">8.2</a>, <a href="#rfc.iref.h.9"><b>10.8</b></a>, <a href="#rfc.xref.header.content-location.3">10.13</a>, <a href="#rfc.xref.header.content-location.4">11.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li>4981 <li>Accept <a href="#rfc.xref.header.accept.1">5.5</a>, <a href="#rfc.xref.header.accept.2">7.5</a>, <a href="#rfc.xref.header.accept.3">9.1</a>, <a href="#rfc.iref.h.2"><b>10.1</b></a>, <a href="#rfc.xref.header.accept.4">11.3.2</a></li> 4982 <li>Accept-Charset <a href="#rfc.xref.header.accept-charset.1">5.5</a>, <a href="#rfc.xref.header.accept-charset.2">9.1</a>, <a href="#rfc.iref.h.3"><b>10.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">11.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li> 4983 <li>Accept-Encoding <a href="#rfc.xref.header.accept-encoding.1">5.5</a>, <a href="#rfc.xref.header.accept-encoding.2">7.4</a>, <a href="#rfc.xref.header.accept-encoding.3">9.1</a>, <a href="#rfc.iref.h.4"><b>10.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">11.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">11.4.2</a></li> 4984 <li>Accept-Language <a href="#rfc.xref.header.accept-language.1">5.5</a>, <a href="#rfc.xref.header.accept-language.2">9.1</a>, <a href="#rfc.iref.h.5"><b>10.4</b></a>, <a href="#rfc.xref.header.accept-language.3">11.3.2</a></li> 4985 <li>Allow <a href="#rfc.xref.header.allow.1">4.1</a>, <a href="#rfc.xref.header.allow.2">5.6</a>, <a href="#rfc.iref.h.6"><b>10.5</b></a>, <a href="#rfc.xref.header.allow.3">11.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li> 4986 <li>Content-Encoding <a href="#rfc.xref.header.content-encoding.1">3.2</a>, <a href="#rfc.xref.header.content-encoding.2">7.4</a>, <a href="#rfc.iref.h.7"><b>10.6</b></a>, <a href="#rfc.xref.header.content-encoding.3">11.3.2</a></li> 4987 <li>Content-Language <a href="#rfc.xref.header.content-language.1">3.2</a>, <a href="#rfc.iref.h.8"><b>10.7</b></a>, <a href="#rfc.xref.header.content-language.2">11.3.2</a></li> 4988 <li>Content-Location <a href="#rfc.xref.header.content-location.1">3.2</a>, <a href="#rfc.xref.header.content-location.2">4.3.4</a>, <a href="#rfc.iref.h.9"><b>10.8</b></a>, <a href="#rfc.xref.header.content-location.3">10.13</a>, <a href="#rfc.xref.header.content-location.4">11.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li> 4989 4989 <li>Content-Transfer-Encoding <a href="#rfc.iref.h.21">A.5</a>, <a href="#rfc.xref.no.content-transfer-encoding.1">C</a></li> 4990 <li>Content-Type <a href="#rfc.xref.header.content-type.1"> 5</a>, <a href="#rfc.xref.header.content-type.2">6.5</a>, <a href="#rfc.xref.header.content-type.3">8.2</a>, <a href="#rfc.iref.h.10"><b>10.9</b></a>, <a href="#rfc.xref.header.content-type.4">11.3.1</a>, <a href="#rfc.xref.header.content-type.5">11.3.2</a></li>4991 <li>Date <a href="#rfc.xref.header.date.1"> 4.6</a>, <a href="#rfc.iref.h.11"><b>10.10</b></a>, <a href="#rfc.xref.header.date.2">11.3.2</a></li>4992 <li>Expect <a href="#rfc.xref.header.expect.1"> 4.5</a>, <a href="#rfc.xref.header.expect.2">5.5.14</a>, <a href="#rfc.iref.h.12"><b>10.11</b></a>, <a href="#rfc.xref.header.expect.3">11.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li>4993 <li>From <a href="#rfc.xref.header.from.1"> 4.5</a>, <a href="#rfc.iref.h.13"><b>10.12</b></a>, <a href="#rfc.xref.header.from.2">11.3.2</a></li>4994 <li>Location <a href="#rfc.xref.header.location.1"> 3.3.4</a>, <a href="#rfc.xref.header.location.2">4.6</a>, <a href="#rfc.xref.header.location.3">5.4</a>, <a href="#rfc.iref.h.14"><b>10.13</b></a>, <a href="#rfc.xref.header.location.4">11.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li>4995 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1"> 3.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">3.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">4.5</a>, <a href="#rfc.iref.h.15"><b>10.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">11.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li>4990 <li>Content-Type <a href="#rfc.xref.header.content-type.1">3.2</a>, <a href="#rfc.xref.header.content-type.2">6</a>, <a href="#rfc.xref.header.content-type.3">7.5</a>, <a href="#rfc.iref.h.10"><b>10.9</b></a>, <a href="#rfc.xref.header.content-type.4">11.3.1</a>, <a href="#rfc.xref.header.content-type.5">11.3.2</a></li> 4991 <li>Date <a href="#rfc.xref.header.date.1">5.6</a>, <a href="#rfc.iref.h.11"><b>10.10</b></a>, <a href="#rfc.xref.header.date.2">11.3.2</a></li> 4992 <li>Expect <a href="#rfc.xref.header.expect.1">5.5</a>, <a href="#rfc.xref.header.expect.2">6.5.14</a>, <a href="#rfc.iref.h.12"><b>10.11</b></a>, <a href="#rfc.xref.header.expect.3">11.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li> 4993 <li>From <a href="#rfc.xref.header.from.1">5.5</a>, <a href="#rfc.iref.h.13"><b>10.12</b></a>, <a href="#rfc.xref.header.from.2">11.3.2</a></li> 4994 <li>Location <a href="#rfc.xref.header.location.1">4.3.4</a>, <a href="#rfc.xref.header.location.2">5.6</a>, <a href="#rfc.xref.header.location.3">6.4</a>, <a href="#rfc.iref.h.14"><b>10.13</b></a>, <a href="#rfc.xref.header.location.4">11.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li> 4995 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">4.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">4.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">5.5</a>, <a href="#rfc.iref.h.15"><b>10.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">11.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li> 4996 4996 <li>MIME-Version <a href="#rfc.xref.mime-version.1">11.3.2</a>, <a href="#rfc.iref.h.20"><b>A.1</b></a></li> 4997 <li>Referer <a href="#rfc.xref.header.referer.1"> 4.5</a>, <a href="#rfc.iref.h.16"><b>10.15</b></a>, <a href="#rfc.xref.header.referer.2">11.3.2</a>, <a href="#rfc.xref.header.referer.3">C</a></li>4998 <li>Retry-After <a href="#rfc.xref.header.retry-after.1"> 4.6</a>, <a href="#rfc.xref.header.retry-after.2">5.6.4</a>, <a href="#rfc.iref.h.17"><b>10.16</b></a>, <a href="#rfc.xref.header.retry-after.3">11.3.2</a></li>4999 <li>Server <a href="#rfc.xref.header.server.1"> 4.6</a>, <a href="#rfc.iref.h.18"><b>10.17</b></a>, <a href="#rfc.xref.header.server.2">11.3.2</a>, <a href="#rfc.xref.header.server.3">12.1</a>, <a href="#rfc.xref.header.server.4">C</a></li>5000 <li>User-Agent <a href="#rfc.xref.header.user-agent.1"> 4.5</a>, <a href="#rfc.xref.header.user-agent.2">9.1</a>, <a href="#rfc.iref.h.19"><b>10.18</b></a>, <a href="#rfc.xref.header.user-agent.3">11.3.2</a>, <a href="#rfc.xref.header.user-agent.4">12.1</a></li>4997 <li>Referer <a href="#rfc.xref.header.referer.1">5.5</a>, <a href="#rfc.iref.h.16"><b>10.15</b></a>, <a href="#rfc.xref.header.referer.2">11.3.2</a>, <a href="#rfc.xref.header.referer.3">C</a></li> 4998 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">5.6</a>, <a href="#rfc.xref.header.retry-after.2">6.6.4</a>, <a href="#rfc.iref.h.17"><b>10.16</b></a>, <a href="#rfc.xref.header.retry-after.3">11.3.2</a></li> 4999 <li>Server <a href="#rfc.xref.header.server.1">5.6</a>, <a href="#rfc.iref.h.18"><b>10.17</b></a>, <a href="#rfc.xref.header.server.2">11.3.2</a>, <a href="#rfc.xref.header.server.3">12.1</a>, <a href="#rfc.xref.header.server.4">C</a></li> 5000 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">5.5</a>, <a href="#rfc.xref.header.user-agent.2">9.1</a>, <a href="#rfc.iref.h.19"><b>10.18</b></a>, <a href="#rfc.xref.header.user-agent.3">11.3.2</a>, <a href="#rfc.xref.header.user-agent.4">12.1</a></li> 5001 5001 </ul> 5002 5002 </li> … … 5004 5004 </li> 5005 5005 <li><a id="rfc.index.I" href="#rfc.index.I"><b>I</b></a><ul> 5006 <li>idempotent <a href="#rfc.iref.i.1"><b> 3.2.2</b></a></li>5006 <li>idempotent <a href="#rfc.iref.i.1"><b>4.2.2</b></a></li> 5007 5007 </ul> 5008 5008 </li> 5009 5009 <li><a id="rfc.index.L" href="#rfc.index.L"><b>L</b></a><ul> 5010 <li>Location header field <a href="#rfc.xref.header.location.1"> 3.3.4</a>, <a href="#rfc.xref.header.location.2">4.6</a>, <a href="#rfc.xref.header.location.3">5.4</a>, <a href="#rfc.iref.l.1"><b>10.13</b></a>, <a href="#rfc.xref.header.location.4">11.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li>5010 <li>Location header field <a href="#rfc.xref.header.location.1">4.3.4</a>, <a href="#rfc.xref.header.location.2">5.6</a>, <a href="#rfc.xref.header.location.3">6.4</a>, <a href="#rfc.iref.l.1"><b>10.13</b></a>, <a href="#rfc.xref.header.location.4">11.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li> 5011 5011 </ul> 5012 5012 </li> 5013 5013 <li><a id="rfc.index.M" href="#rfc.index.M"><b>M</b></a><ul> 5014 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1"> 3.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">3.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">4.5</a>, <a href="#rfc.iref.m.9"><b>10.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">11.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li>5014 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">4.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">4.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">5.5</a>, <a href="#rfc.iref.m.9"><b>10.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">11.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li> 5015 5015 <li>Methods 5016 5016 <ul> 5017 <li>CONNECT <a href="#rfc.xref.CONNECT.1"> 3.1</a>, <a href="#rfc.iref.m.8"><b>3.3.8</b></a>, <a href="#rfc.xref.CONNECT.2">11.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li>5018 <li>DELETE <a href="#rfc.xref.DELETE.1"> 3.1</a>, <a href="#rfc.iref.m.6"><b>3.3.6</b></a>, <a href="#rfc.xref.DELETE.2">11.1.3</a></li>5019 <li>GET <a href="#rfc.xref.GET.1"> 3.1</a>, <a href="#rfc.iref.m.2"><b>3.3.2</b></a>, <a href="#rfc.xref.GET.2">11.1.3</a></li>5020 <li>HEAD <a href="#rfc.xref.HEAD.1"> 3.1</a>, <a href="#rfc.iref.m.3"><b>3.3.3</b></a>, <a href="#rfc.xref.HEAD.2">11.1.3</a></li>5021 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1"> 3.1</a>, <a href="#rfc.iref.m.1"><b>3.3.1</b></a>, <a href="#rfc.xref.OPTIONS.2">10.14</a>, <a href="#rfc.xref.OPTIONS.3">11.1.3</a></li>5022 <li>POST <a href="#rfc.xref.POST.1"> 3.1</a>, <a href="#rfc.iref.m.4"><b>3.3.4</b></a>, <a href="#rfc.xref.POST.2">11.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li>5023 <li>PUT <a href="#rfc.xref.PUT.1"> 3.1</a>, <a href="#rfc.iref.m.5"><b>3.3.5</b></a>, <a href="#rfc.xref.PUT.2">11.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li>5024 <li>TRACE <a href="#rfc.xref.TRACE.1"> 3.1</a>, <a href="#rfc.iref.m.7"><b>3.3.7</b></a>, <a href="#rfc.xref.TRACE.2">10.14</a>, <a href="#rfc.xref.TRACE.3">11.1.3</a>, <a href="#rfc.xref.TRACE.4">12.1</a></li>5017 <li>CONNECT <a href="#rfc.xref.CONNECT.1">4.1</a>, <a href="#rfc.iref.m.8"><b>4.3.8</b></a>, <a href="#rfc.xref.CONNECT.2">11.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li> 5018 <li>DELETE <a href="#rfc.xref.DELETE.1">4.1</a>, <a href="#rfc.iref.m.6"><b>4.3.6</b></a>, <a href="#rfc.xref.DELETE.2">11.1.3</a></li> 5019 <li>GET <a href="#rfc.xref.GET.1">4.1</a>, <a href="#rfc.iref.m.2"><b>4.3.2</b></a>, <a href="#rfc.xref.GET.2">11.1.3</a></li> 5020 <li>HEAD <a href="#rfc.xref.HEAD.1">4.1</a>, <a href="#rfc.iref.m.3"><b>4.3.3</b></a>, <a href="#rfc.xref.HEAD.2">11.1.3</a></li> 5021 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1">4.1</a>, <a href="#rfc.iref.m.1"><b>4.3.1</b></a>, <a href="#rfc.xref.OPTIONS.2">10.14</a>, <a href="#rfc.xref.OPTIONS.3">11.1.3</a></li> 5022 <li>POST <a href="#rfc.xref.POST.1">4.1</a>, <a href="#rfc.iref.m.4"><b>4.3.4</b></a>, <a href="#rfc.xref.POST.2">11.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li> 5023 <li>PUT <a href="#rfc.xref.PUT.1">4.1</a>, <a href="#rfc.iref.m.5"><b>4.3.5</b></a>, <a href="#rfc.xref.PUT.2">11.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li> 5024 <li>TRACE <a href="#rfc.xref.TRACE.1">4.1</a>, <a href="#rfc.iref.m.7"><b>4.3.7</b></a>, <a href="#rfc.xref.TRACE.2">10.14</a>, <a href="#rfc.xref.TRACE.3">11.1.3</a>, <a href="#rfc.xref.TRACE.4">12.1</a></li> 5025 5025 </ul> 5026 5026 </li> … … 5029 5029 </li> 5030 5030 <li><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul> 5031 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1"> 3.1</a>, <a href="#rfc.iref.o.1"><b>3.3.1</b></a>, <a href="#rfc.xref.OPTIONS.2">10.14</a>, <a href="#rfc.xref.OPTIONS.3">11.1.3</a></li>5031 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1">4.1</a>, <a href="#rfc.iref.o.1"><b>4.3.1</b></a>, <a href="#rfc.xref.OPTIONS.2">10.14</a>, <a href="#rfc.xref.OPTIONS.3">11.1.3</a></li> 5032 5032 </ul> 5033 5033 </li> 5034 5034 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 5035 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.7">3 .3.1</a>, <a href="#rfc.xref.Part1.8">3.3.7</a>, <a href="#rfc.xref.Part1.9">3.3.7</a>, <a href="#rfc.xref.Part1.10">3.3.8</a>, <a href="#rfc.xref.Part1.11">4.5</a>, <a href="#rfc.xref.Part1.12">4.5</a>, <a href="#rfc.xref.Part1.13">4.6</a>, <a href="#rfc.xref.Part1.14">5.2.1</a>, <a href="#rfc.xref.Part1.15">5.2.2</a>, <a href="#rfc.xref.Part1.16">5.3.4</a>, <a href="#rfc.xref.Part1.17">5.3.6</a>, <a href="#rfc.xref.Part1.18">5.5.15</a>, <a href="#rfc.xref.Part1.19">5.6.6</a>, <a href="#rfc.xref.Part1.20">6.4</a>, <a href="#rfc.xref.Part1.21">6.4</a>, <a href="#rfc.xref.Part1.22">6.4</a>, <a href="#rfc.xref.Part1.23">7.1</a>, <a href="#rfc.xref.Part1.24">7.2</a>, <a href="#rfc.xref.Part1.25">8</a>, <a href="#rfc.xref.Part1.26">8.1</a>, <a href="#rfc.xref.Part1.27">10.8</a>, <a href="#rfc.xref.Part1.28">10.11</a>, <a href="#rfc.xref.Part1.29">10.17</a>, <a href="#rfc.xref.Part1.30">10.17</a>, <a href="#rfc.xref.Part1.31">10.18</a>, <a href="#rfc.xref.Part1.32">11.1.2</a>, <a href="#rfc.xref.Part1.33">11.3.1</a>, <a href="#rfc.xref.Part1.34">11.3.1</a>, <a href="#rfc.xref.Part1.35">11.3.1</a>, <a href="#rfc.xref.Part1.36">11.3.1</a>, <a href="#rfc.xref.Part1.37">11.3.1</a>, <a href="#rfc.xref.Part1.38">11.3.1</a>, <a href="#rfc.xref.Part1.39">11.4</a>, <a href="#rfc.xref.Part1.40">11.4.1</a>, <a href="#rfc.xref.Part1.41">11.4.1</a>, <a href="#rfc.xref.Part1.42">11.4.2</a>, <a href="#rfc.xref.Part1.43">11.4.2</a>, <a href="#rfc.xref.Part1.44">11.4.2</a>, <a href="#rfc.xref.Part1.45">13</a>, <a href="#Part1"><b>14.1</b></a>, <a href="#rfc.xref.Part1.46">C</a>, <a href="#rfc.xref.Part1.47">D</a>, <a href="#rfc.xref.Part1.48">D</a>, <a href="#rfc.xref.Part1.49">D</a>, <a href="#rfc.xref.Part1.50">D</a>, <a href="#rfc.xref.Part1.51">D</a>, <a href="#rfc.xref.Part1.52">D</a>, <a href="#rfc.xref.Part1.53">D</a>, <a href="#rfc.xref.Part1.54">D</a>, <a href="#rfc.xref.Part1.55">D</a>, <a href="#rfc.xref.Part1.56">D</a>, <a href="#rfc.xref.Part1.57">D</a><ul>5035 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.7">3</a>, <a href="#rfc.xref.Part1.8">3.1</a>, <a href="#rfc.xref.Part1.9">4.3.1</a>, <a href="#rfc.xref.Part1.10">4.3.7</a>, <a href="#rfc.xref.Part1.11">4.3.7</a>, <a href="#rfc.xref.Part1.12">4.3.8</a>, <a href="#rfc.xref.Part1.13">5.5</a>, <a href="#rfc.xref.Part1.14">5.5</a>, <a href="#rfc.xref.Part1.15">5.6</a>, <a href="#rfc.xref.Part1.16">6.2.1</a>, <a href="#rfc.xref.Part1.17">6.2.2</a>, <a href="#rfc.xref.Part1.18">6.3.4</a>, <a href="#rfc.xref.Part1.19">6.3.6</a>, <a href="#rfc.xref.Part1.20">6.5.15</a>, <a href="#rfc.xref.Part1.21">6.6.6</a>, <a href="#rfc.xref.Part1.22">7.4</a>, <a href="#rfc.xref.Part1.23">7.4</a>, <a href="#rfc.xref.Part1.24">7.4</a>, <a href="#rfc.xref.Part1.25">8.1</a>, <a href="#rfc.xref.Part1.26">8.2</a>, <a href="#rfc.xref.Part1.27">10.8</a>, <a href="#rfc.xref.Part1.28">10.11</a>, <a href="#rfc.xref.Part1.29">10.17</a>, <a href="#rfc.xref.Part1.30">10.17</a>, <a href="#rfc.xref.Part1.31">10.18</a>, <a href="#rfc.xref.Part1.32">11.1.2</a>, <a href="#rfc.xref.Part1.33">11.3.1</a>, <a href="#rfc.xref.Part1.34">11.3.1</a>, <a href="#rfc.xref.Part1.35">11.3.1</a>, <a href="#rfc.xref.Part1.36">11.3.1</a>, <a href="#rfc.xref.Part1.37">11.3.1</a>, <a href="#rfc.xref.Part1.38">11.3.1</a>, <a href="#rfc.xref.Part1.39">11.4</a>, <a href="#rfc.xref.Part1.40">11.4.1</a>, <a href="#rfc.xref.Part1.41">11.4.1</a>, <a href="#rfc.xref.Part1.42">11.4.2</a>, <a href="#rfc.xref.Part1.43">11.4.2</a>, <a href="#rfc.xref.Part1.44">11.4.2</a>, <a href="#rfc.xref.Part1.45">13</a>, <a href="#Part1"><b>14.1</b></a>, <a href="#rfc.xref.Part1.46">C</a>, <a href="#rfc.xref.Part1.47">D</a>, <a href="#rfc.xref.Part1.48">D</a>, <a href="#rfc.xref.Part1.49">D</a>, <a href="#rfc.xref.Part1.50">D</a>, <a href="#rfc.xref.Part1.51">D</a>, <a href="#rfc.xref.Part1.52">D</a>, <a href="#rfc.xref.Part1.53">D</a>, <a href="#rfc.xref.Part1.54">D</a>, <a href="#rfc.xref.Part1.55">D</a>, <a href="#rfc.xref.Part1.56">D</a>, <a href="#rfc.xref.Part1.57">D</a><ul> 5036 5036 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.3">1.2</a></li> 5037 <li><em>Section 2.3</em> <a href="#rfc.xref.Part1.1 6">5.3.4</a></li>5037 <li><em>Section 2.3</em> <a href="#rfc.xref.Part1.18">6.3.4</a></li> 5038 5038 <li><em>Section 2.5</em> <a href="#rfc.xref.Part1.2">1.1</a></li> 5039 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1. 19">5.6.6</a></li>5039 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1.21">6.6.6</a></li> 5040 5040 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.54">D</a>, <a href="#rfc.xref.Part1.56">D</a>, <a href="#rfc.xref.Part1.57">D</a></li> 5041 5041 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.29">10.17</a>, <a href="#rfc.xref.Part1.31">10.18</a>, <a href="#rfc.xref.Part1.33">11.3.1</a>, <a href="#rfc.xref.Part1.36">11.3.1</a></li> 5042 5042 <li><em>Section 3.2.1</em> <a href="#rfc.xref.Part1.48">D</a>, <a href="#rfc.xref.Part1.49">D</a>, <a href="#rfc.xref.Part1.50">D</a></li> 5043 5043 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1.35">11.3.1</a>, <a href="#rfc.xref.Part1.51">D</a>, <a href="#rfc.xref.Part1.52">D</a>, <a href="#rfc.xref.Part1.53">D</a>, <a href="#rfc.xref.Part1.55">D</a></li> 5044 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1. 17">5.3.6</a>, <a href="#rfc.xref.Part1.24">7.2</a>, <a href="#rfc.xref.Part1.25">8</a>, <a href="#rfc.xref.Part1.32">11.1.2</a></li>5045 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1.2 3">7.1</a></li>5044 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.7">3</a>, <a href="#rfc.xref.Part1.19">6.3.6</a>, <a href="#rfc.xref.Part1.26">8.2</a>, <a href="#rfc.xref.Part1.32">11.1.2</a></li> 5045 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1.25">8.1</a></li> 5046 5046 <li><em>Section 4</em> <a href="#rfc.xref.Part1.40">11.4.1</a></li> 5047 5047 <li><em>Section 4.1</em> <a href="#rfc.xref.Part1.38">11.3.1</a></li> 5048 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1.2 0">6.4</a>, <a href="#rfc.xref.Part1.42">11.4.2</a></li>5048 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1.22">7.4</a>, <a href="#rfc.xref.Part1.42">11.4.2</a></li> 5049 5049 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1.39">11.4</a>, <a href="#rfc.xref.Part1.41">11.4.1</a></li> 5050 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1.2 1">6.4</a>, <a href="#rfc.xref.Part1.43">11.4.2</a></li>5051 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1.2 2">6.4</a>, <a href="#rfc.xref.Part1.44">11.4.2</a></li>5052 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.1 2">4.5</a></li>5053 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1. 7">3.3.1</a>, <a href="#rfc.xref.Part1.10">3.3.8</a></li>5054 <li><em>Section 5.4</em> <a href="#rfc.xref.Part1.1 1">4.5</a></li>5055 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1. 13">4.6</a>, <a href="#rfc.xref.Part1.26">8.1</a>, <a href="#rfc.xref.Part1.27">10.8</a></li>5056 <li><em>Section 5.7</em> <a href="#rfc.xref.Part1. 8">3.3.7</a>, <a href="#rfc.xref.Part1.30">10.17</a>, <a href="#rfc.xref.Part1.46">C</a></li>5050 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1.23">7.4</a>, <a href="#rfc.xref.Part1.43">11.4.2</a></li> 5051 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1.24">7.4</a>, <a href="#rfc.xref.Part1.44">11.4.2</a></li> 5052 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.14">5.5</a></li> 5053 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.9">4.3.1</a>, <a href="#rfc.xref.Part1.12">4.3.8</a></li> 5054 <li><em>Section 5.4</em> <a href="#rfc.xref.Part1.13">5.5</a></li> 5055 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.8">3.1</a>, <a href="#rfc.xref.Part1.15">5.6</a>, <a href="#rfc.xref.Part1.27">10.8</a></li> 5056 <li><em>Section 5.7</em> <a href="#rfc.xref.Part1.10">4.3.7</a>, <a href="#rfc.xref.Part1.30">10.17</a>, <a href="#rfc.xref.Part1.46">C</a></li> 5057 5057 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.37">11.3.1</a></li> 5058 <li><em>Section 6.3</em> <a href="#rfc.xref.Part1.1 4">5.2.1</a>, <a href="#rfc.xref.Part1.28">10.11</a></li>5059 <li><em>Section 6.4</em> <a href="#rfc.xref.Part1.1 5">5.2.2</a>, <a href="#rfc.xref.Part1.18">5.5.15</a></li>5060 <li><em>Section 7.3.1</em> <a href="#rfc.xref.Part1. 9">3.3.7</a></li>5058 <li><em>Section 6.3</em> <a href="#rfc.xref.Part1.16">6.2.1</a>, <a href="#rfc.xref.Part1.28">10.11</a></li> 5059 <li><em>Section 6.4</em> <a href="#rfc.xref.Part1.17">6.2.2</a>, <a href="#rfc.xref.Part1.20">6.5.15</a></li> 5060 <li><em>Section 7.3.1</em> <a href="#rfc.xref.Part1.11">4.3.7</a></li> 5061 5061 <li><em>Section 9</em> <a href="#rfc.xref.Part1.45">13</a></li> 5062 5062 <li><em>Appendix B</em> <a href="#rfc.xref.Part1.34">11.3.1</a></li> 5063 5063 </ul> 5064 5064 </li> 5065 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3. 3.2</a>, <a href="#rfc.xref.Part4.2">4.5</a>, <a href="#rfc.xref.Part4.3">4.5</a>, <a href="#rfc.xref.Part4.4">4.5</a>, <a href="#rfc.xref.Part4.5">4.5</a>, <a href="#rfc.xref.Part4.6">4.6</a>, <a href="#rfc.xref.Part4.7">5.1</a>, <a href="#rfc.xref.Part4.8">5.1</a>, <a href="#rfc.xref.Part4.9">5.1</a>, <a href="#rfc.xref.Part4.10">5.3.2</a>, <a href="#rfc.xref.Part4.11">5.4</a>, <a href="#rfc.xref.Part4.12">8.2</a>, <a href="#rfc.xref.Part4.13">8.2</a>, <a href="#Part4"><b>14.1</b></a>, <a href="#rfc.xref.Part4.14">F.2</a><ul>5066 <li><em>Section 2.2</em> <a href="#rfc.xref.Part4. 13">8.2</a></li>5067 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4. 6">4.6</a>, <a href="#rfc.xref.Part4.10">5.3.2</a>, <a href="#rfc.xref.Part4.12">8.2</a></li>5068 <li><em>Section 3.1</em> <a href="#rfc.xref.Part4. 2">4.5</a></li>5069 <li><em>Section 3.2</em> <a href="#rfc.xref.Part4. 4">4.5</a></li>5070 <li><em>Section 3.3</em> <a href="#rfc.xref.Part4. 3">4.5</a></li>5071 <li><em>Section 3.4</em> <a href="#rfc.xref.Part4. 5">4.5</a></li>5072 <li><em>Section 4</em> <a href="#rfc.xref.Part4. 7">5.1</a></li>5073 <li><em>Section 4.1</em> <a href="#rfc.xref.Part4. 8">5.1</a>, <a href="#rfc.xref.Part4.11">5.4</a></li>5074 <li><em>Section 4.2</em> <a href="#rfc.xref.Part4. 9">5.1</a></li>5065 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3.2</a>, <a href="#rfc.xref.Part4.2">3.2</a>, <a href="#rfc.xref.Part4.3">4.3.2</a>, <a href="#rfc.xref.Part4.4">5.5</a>, <a href="#rfc.xref.Part4.5">5.5</a>, <a href="#rfc.xref.Part4.6">5.5</a>, <a href="#rfc.xref.Part4.7">5.5</a>, <a href="#rfc.xref.Part4.8">5.6</a>, <a href="#rfc.xref.Part4.9">6.1</a>, <a href="#rfc.xref.Part4.10">6.1</a>, <a href="#rfc.xref.Part4.11">6.1</a>, <a href="#rfc.xref.Part4.12">6.3.2</a>, <a href="#rfc.xref.Part4.13">6.4</a>, <a href="#Part4"><b>14.1</b></a>, <a href="#rfc.xref.Part4.14">F.2</a><ul> 5066 <li><em>Section 2.2</em> <a href="#rfc.xref.Part4.2">3.2</a></li> 5067 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4.1">3.2</a>, <a href="#rfc.xref.Part4.8">5.6</a>, <a href="#rfc.xref.Part4.12">6.3.2</a></li> 5068 <li><em>Section 3.1</em> <a href="#rfc.xref.Part4.4">5.5</a></li> 5069 <li><em>Section 3.2</em> <a href="#rfc.xref.Part4.6">5.5</a></li> 5070 <li><em>Section 3.3</em> <a href="#rfc.xref.Part4.5">5.5</a></li> 5071 <li><em>Section 3.4</em> <a href="#rfc.xref.Part4.7">5.5</a></li> 5072 <li><em>Section 4</em> <a href="#rfc.xref.Part4.9">6.1</a></li> 5073 <li><em>Section 4.1</em> <a href="#rfc.xref.Part4.10">6.1</a>, <a href="#rfc.xref.Part4.13">6.4</a></li> 5074 <li><em>Section 4.2</em> <a href="#rfc.xref.Part4.11">6.1</a></li> 5075 5075 </ul> 5076 5076 </li> 5077 <li><em>Part5</em> <a href="#rfc.xref.Part5.1"> 3.3.2</a>, <a href="#rfc.xref.Part5.2">3.3.2</a>, <a href="#rfc.xref.Part5.3">3.3.5</a>, <a href="#rfc.xref.Part5.4">4.5</a>, <a href="#rfc.xref.Part5.5">4.5</a>, <a href="#rfc.xref.Part5.6">4.6</a>, <a href="#rfc.xref.Part5.7">5.1</a>, <a href="#rfc.xref.Part5.8">5.1</a>, <a href="#rfc.xref.Part5.9">5.1</a>, <a href="#rfc.xref.Part5.10">7.1</a>, <a href="#Part5"><b>14.1</b></a><ul>5078 <li><em>Section 3</em> <a href="#rfc.xref.Part5.7"> 5.1</a></li>5079 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5.8"> 5.1</a></li>5080 <li><em>Section 3.2</em> <a href="#rfc.xref.Part5.9"> 5.1</a></li>5081 <li><em>Section 5.1</em> <a href="#rfc.xref.Part5.6"> 4.6</a></li>5082 <li><em>Section 5.2</em> <a href="#rfc.xref.Part5.3"> 3.3.5</a>, <a href="#rfc.xref.Part5.10">7.1</a></li>5083 <li><em>Section 5.3</em> <a href="#rfc.xref.Part5.4"> 4.5</a></li>5084 <li><em>Section 5.4</em> <a href="#rfc.xref.Part5.2"> 3.3.2</a>, <a href="#rfc.xref.Part5.5">4.5</a></li>5077 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">4.3.2</a>, <a href="#rfc.xref.Part5.2">4.3.2</a>, <a href="#rfc.xref.Part5.3">4.3.5</a>, <a href="#rfc.xref.Part5.4">5.5</a>, <a href="#rfc.xref.Part5.5">5.5</a>, <a href="#rfc.xref.Part5.6">5.6</a>, <a href="#rfc.xref.Part5.7">6.1</a>, <a href="#rfc.xref.Part5.8">6.1</a>, <a href="#rfc.xref.Part5.9">6.1</a>, <a href="#rfc.xref.Part5.10">8.1</a>, <a href="#Part5"><b>14.1</b></a><ul> 5078 <li><em>Section 3</em> <a href="#rfc.xref.Part5.7">6.1</a></li> 5079 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5.8">6.1</a></li> 5080 <li><em>Section 3.2</em> <a href="#rfc.xref.Part5.9">6.1</a></li> 5081 <li><em>Section 5.1</em> <a href="#rfc.xref.Part5.6">5.6</a></li> 5082 <li><em>Section 5.2</em> <a href="#rfc.xref.Part5.3">4.3.5</a>, <a href="#rfc.xref.Part5.10">8.1</a></li> 5083 <li><em>Section 5.3</em> <a href="#rfc.xref.Part5.4">5.5</a></li> 5084 <li><em>Section 5.4</em> <a href="#rfc.xref.Part5.2">4.3.2</a>, <a href="#rfc.xref.Part5.5">5.5</a></li> 5085 5085 </ul> 5086 5086 </li> 5087 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">3.2 .3</a>, <a href="#rfc.xref.Part6.2">3.3.2</a>, <a href="#rfc.xref.Part6.3">3.3.3</a>, <a href="#rfc.xref.Part6.4">3.3.4</a>, <a href="#rfc.xref.Part6.5">3.3.5</a>, <a href="#rfc.xref.Part6.6">3.3.6</a>, <a href="#rfc.xref.Part6.7">4.6</a>, <a href="#rfc.xref.Part6.8">4.6</a>, <a href="#rfc.xref.Part6.9">5.3.1</a>, <a href="#rfc.xref.Part6.10">5.3.4</a>, <a href="#rfc.xref.Part6.11">5.3.4</a>, <a href="#rfc.xref.Part6.12">5.3.4</a>, <a href="#rfc.xref.Part6.13">5.4.1</a>, <a href="#rfc.xref.Part6.14">5.4.2</a>, <a href="#rfc.xref.Part6.15">5.5.9</a>, <a href="#rfc.xref.Part6.16">8.2</a>, <a href="#rfc.xref.Part6.17">9.1</a>, <a href="#rfc.xref.Part6.18">11.2.2</a>, <a href="#rfc.xref.Part6.19">11.3.1</a>, <a href="#Part6"><b>14.1</b></a><ul>5088 <li><em>Section 4.1.1</em> <a href="#rfc.xref.Part6. 4">3.3.4</a></li>5089 <li><em>Section 4.1.2</em> <a href="#rfc.xref.Part6. 9">5.3.1</a>, <a href="#rfc.xref.Part6.12">5.3.4</a>, <a href="#rfc.xref.Part6.13">5.4.1</a>, <a href="#rfc.xref.Part6.14">5.4.2</a>, <a href="#rfc.xref.Part6.15">5.5.9</a></li>5090 <li><em>Section 5</em> <a href="#rfc.xref.Part6. 3">3.3.3</a></li>5091 <li><em>Section 6</em> <a href="#rfc.xref.Part6. 5">3.3.5</a>, <a href="#rfc.xref.Part6.6">3.3.6</a></li>5092 <li><em>Section 7.1</em> <a href="#rfc.xref.Part6. 7">4.6</a></li>5093 <li><em>Section 7.2</em> <a href="#rfc.xref.Part6.1 0">5.3.4</a></li>5094 <li><em>Section 7.3</em> <a href="#rfc.xref.Part6.1 6">8.2</a></li>5095 <li><em>Section 7.5</em> <a href="#rfc.xref.Part6. 8">4.6</a>, <a href="#rfc.xref.Part6.17">9.1</a></li>5096 <li><em>Section 7.6</em> <a href="#rfc.xref.Part6.1 1">5.3.4</a></li>5087 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">3.2</a>, <a href="#rfc.xref.Part6.2">4.2.3</a>, <a href="#rfc.xref.Part6.3">4.3.2</a>, <a href="#rfc.xref.Part6.4">4.3.3</a>, <a href="#rfc.xref.Part6.5">4.3.4</a>, <a href="#rfc.xref.Part6.6">4.3.5</a>, <a href="#rfc.xref.Part6.7">4.3.6</a>, <a href="#rfc.xref.Part6.8">5.6</a>, <a href="#rfc.xref.Part6.9">5.6</a>, <a href="#rfc.xref.Part6.10">6.3.1</a>, <a href="#rfc.xref.Part6.11">6.3.4</a>, <a href="#rfc.xref.Part6.12">6.3.4</a>, <a href="#rfc.xref.Part6.13">6.3.4</a>, <a href="#rfc.xref.Part6.14">6.4.1</a>, <a href="#rfc.xref.Part6.15">6.4.2</a>, <a href="#rfc.xref.Part6.16">6.5.9</a>, <a href="#rfc.xref.Part6.17">9.1</a>, <a href="#rfc.xref.Part6.18">11.2.2</a>, <a href="#rfc.xref.Part6.19">11.3.1</a>, <a href="#Part6"><b>14.1</b></a><ul> 5088 <li><em>Section 4.1.1</em> <a href="#rfc.xref.Part6.5">4.3.4</a></li> 5089 <li><em>Section 4.1.2</em> <a href="#rfc.xref.Part6.10">6.3.1</a>, <a href="#rfc.xref.Part6.13">6.3.4</a>, <a href="#rfc.xref.Part6.14">6.4.1</a>, <a href="#rfc.xref.Part6.15">6.4.2</a>, <a href="#rfc.xref.Part6.16">6.5.9</a></li> 5090 <li><em>Section 5</em> <a href="#rfc.xref.Part6.4">4.3.3</a></li> 5091 <li><em>Section 6</em> <a href="#rfc.xref.Part6.6">4.3.5</a>, <a href="#rfc.xref.Part6.7">4.3.6</a></li> 5092 <li><em>Section 7.1</em> <a href="#rfc.xref.Part6.8">5.6</a></li> 5093 <li><em>Section 7.2</em> <a href="#rfc.xref.Part6.11">6.3.4</a></li> 5094 <li><em>Section 7.3</em> <a href="#rfc.xref.Part6.1">3.2</a></li> 5095 <li><em>Section 7.5</em> <a href="#rfc.xref.Part6.9">5.6</a>, <a href="#rfc.xref.Part6.17">9.1</a></li> 5096 <li><em>Section 7.6</em> <a href="#rfc.xref.Part6.12">6.3.4</a></li> 5097 5097 </ul> 5098 5098 </li> 5099 <li><em>Part7</em> <a href="#rfc.xref.Part7.1"> 4.5</a>, <a href="#rfc.xref.Part7.2">4.5</a>, <a href="#rfc.xref.Part7.3">4.6</a>, <a href="#rfc.xref.Part7.4">4.6</a>, <a href="#rfc.xref.Part7.5">5.1</a>, <a href="#rfc.xref.Part7.6">5.1</a>, <a href="#rfc.xref.Part7.7">5.1</a>, <a href="#Part7"><b>14.1</b></a><ul>5100 <li><em>Section 3</em> <a href="#rfc.xref.Part7.5"> 5.1</a></li>5101 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.6"> 5.1</a></li>5102 <li><em>Section 3.2</em> <a href="#rfc.xref.Part7.7"> 5.1</a></li>5103 <li><em>Section 4.1</em> <a href="#rfc.xref.Part7.1"> 4.5</a></li>5104 <li><em>Section 4.2</em> <a href="#rfc.xref.Part7.3"> 4.6</a></li>5105 <li><em>Section 4.3</em> <a href="#rfc.xref.Part7.2"> 4.5</a></li>5106 <li><em>Section 4.4</em> <a href="#rfc.xref.Part7.4"> 4.6</a></li>5099 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">5.5</a>, <a href="#rfc.xref.Part7.2">5.5</a>, <a href="#rfc.xref.Part7.3">5.6</a>, <a href="#rfc.xref.Part7.4">5.6</a>, <a href="#rfc.xref.Part7.5">6.1</a>, <a href="#rfc.xref.Part7.6">6.1</a>, <a href="#rfc.xref.Part7.7">6.1</a>, <a href="#Part7"><b>14.1</b></a><ul> 5100 <li><em>Section 3</em> <a href="#rfc.xref.Part7.5">6.1</a></li> 5101 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.6">6.1</a></li> 5102 <li><em>Section 3.2</em> <a href="#rfc.xref.Part7.7">6.1</a></li> 5103 <li><em>Section 4.1</em> <a href="#rfc.xref.Part7.1">5.5</a></li> 5104 <li><em>Section 4.2</em> <a href="#rfc.xref.Part7.3">5.6</a></li> 5105 <li><em>Section 4.3</em> <a href="#rfc.xref.Part7.2">5.5</a></li> 5106 <li><em>Section 4.4</em> <a href="#rfc.xref.Part7.4">5.6</a></li> 5107 5107 </ul> 5108 5108 </li> 5109 <li>payload <a href="#rfc.iref.p.3"> 7</a></li>5110 <li>POST method <a href="#rfc.xref.POST.1"> 3.1</a>, <a href="#rfc.iref.p.1"><b>3.3.4</b></a>, <a href="#rfc.xref.POST.2">11.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li>5111 <li>PUT method <a href="#rfc.xref.PUT.1"> 3.1</a>, <a href="#rfc.iref.p.2"><b>3.3.5</b></a>, <a href="#rfc.xref.PUT.2">11.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li>5109 <li>payload <a href="#rfc.iref.p.3">8</a></li> 5110 <li>POST method <a href="#rfc.xref.POST.1">4.1</a>, <a href="#rfc.iref.p.1"><b>4.3.4</b></a>, <a href="#rfc.xref.POST.2">11.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li> 5111 <li>PUT method <a href="#rfc.xref.PUT.1">4.1</a>, <a href="#rfc.iref.p.2"><b>4.3.5</b></a>, <a href="#rfc.xref.PUT.2">11.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li> 5112 5112 </ul> 5113 5113 </li> 5114 5114 <li><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul> 5115 <li>Referer header field <a href="#rfc.xref.header.referer.1"> 4.5</a&g