draft-ietf-httpbis-semantics-17.txt   draft-ietf-httpbis-semantics-latest.txt 
HTTP Working Group R. Fielding, Ed. HTTP Working Group R. Fielding, Ed.
Internet-Draft Adobe Internet-Draft Adobe
Obsoletes: 2818, 7230, 7231, 7232, 7233, 7235, M. Nottingham, Ed. Obsoletes: 2818, 7230, 7231, 7232, 7233, 7235, M. Nottingham, Ed.
7538, 7615, 7694 (if approved) Fastly 7538, 7615, 7694 (if approved) Fastly
Updates: 3864 (if approved) J. Reschke, Ed. Updates: 3864 (if approved) J. Reschke, Ed.
Intended status: Standards Track greenbytes Intended status: Standards Track greenbytes
Expires: January 27, 2022 July 26, 2021 Expires: February 2, 2022 August 1, 2021
HTTP Semantics HTTP Semantics
draft-ietf-httpbis-semantics-17 draft-ietf-httpbis-semantics-latest
Abstract Abstract
The Hypertext Transfer Protocol (HTTP) is a stateless application- The Hypertext Transfer Protocol (HTTP) is a stateless application-
level protocol for distributed, collaborative, hypertext information level protocol for distributed, collaborative, hypertext information
systems. This document describes the overall architecture of HTTP, systems. This document describes the overall architecture of HTTP,
establishes common terminology, and defines aspects of the protocol establishes common terminology, and defines aspects of the protocol
that are shared by all versions. In this definition are core that are shared by all versions. In this definition are core
protocol elements, extensibility mechanisms, and the "http" and protocol elements, extensibility mechanisms, and the "http" and
"https" Uniform Resource Identifier (URI) schemes. "https" Uniform Resource Identifier (URI) schemes.
skipping to change at page 1, line 40 skipping to change at page 1, line 40
This note is to be removed before publishing as an RFC. This note is to be removed before publishing as an RFC.
Discussion of this draft takes place on the HTTP working group Discussion of this draft takes place on the HTTP working group
mailing list (ietf-http-wg@w3.org), which is archived at mailing list (ietf-http-wg@w3.org), which is archived at
<https://lists.w3.org/Archives/Public/ietf-http-wg/>. <https://lists.w3.org/Archives/Public/ietf-http-wg/>.
Working Group information can be found at <https://httpwg.org/>; Working Group information can be found at <https://httpwg.org/>;
source code and issues list for this draft can be found at source code and issues list for this draft can be found at
<https://github.com/httpwg/http-core>. <https://github.com/httpwg/http-core>.
The changes in this draft are summarized in Appendix C.18. The changes in this draft are summarized in Appendix C.19.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 27, 2022. This Internet-Draft will expire on February 2, 2022.
Copyright Notice Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the Copyright (c) 2021 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document. license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights Please review these documents carefully, as they describe your rights
skipping to change at page 9, line 30 skipping to change at page 9, line 30
C.9. Since draft-ietf-httpbis-semantics-07 . . . . . . . . . . 223 C.9. Since draft-ietf-httpbis-semantics-07 . . . . . . . . . . 223
C.10. Since draft-ietf-httpbis-semantics-08 . . . . . . . . . . 224 C.10. Since draft-ietf-httpbis-semantics-08 . . . . . . . . . . 224
C.11. Since draft-ietf-httpbis-semantics-09 . . . . . . . . . . 225 C.11. Since draft-ietf-httpbis-semantics-09 . . . . . . . . . . 225
C.12. Since draft-ietf-httpbis-semantics-10 . . . . . . . . . . 225 C.12. Since draft-ietf-httpbis-semantics-10 . . . . . . . . . . 225
C.13. Since draft-ietf-httpbis-semantics-11 . . . . . . . . . . 227 C.13. Since draft-ietf-httpbis-semantics-11 . . . . . . . . . . 227
C.14. Since draft-ietf-httpbis-semantics-12 . . . . . . . . . . 227 C.14. Since draft-ietf-httpbis-semantics-12 . . . . . . . . . . 227
C.15. Since draft-ietf-httpbis-semantics-13 . . . . . . . . . . 229 C.15. Since draft-ietf-httpbis-semantics-13 . . . . . . . . . . 229
C.16. Since draft-ietf-httpbis-semantics-14 . . . . . . . . . . 230 C.16. Since draft-ietf-httpbis-semantics-14 . . . . . . . . . . 230
C.17. Since draft-ietf-httpbis-semantics-15 . . . . . . . . . . 232 C.17. Since draft-ietf-httpbis-semantics-15 . . . . . . . . . . 232
C.18. Since draft-ietf-httpbis-semantics-16 . . . . . . . . . . 233 C.18. Since draft-ietf-httpbis-semantics-16 . . . . . . . . . . 233
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 233 C.19. Since draft-ietf-httpbis-semantics-17 . . . . . . . . . . 233
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 234
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 245 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 246
1. Introduction 1. Introduction
1.1. Purpose 1.1. Purpose
The Hypertext Transfer Protocol (HTTP) is a family of stateless, The Hypertext Transfer Protocol (HTTP) is a family of stateless,
application-level, request/response protocols that share a generic application-level, request/response protocols that share a generic
interface, extensible semantics, and self-descriptive messages to interface, extensible semantics, and self-descriptive messages to
enable flexible interaction with network-based hypertext information enable flexible interaction with network-based hypertext information
systems. systems.
skipping to change at page 157, line 20 skipping to change at page 157, line 20
request because they were added by the calling context) where request because they were added by the calling context) where
there are security implications; this includes but is not limited there are security implications; this includes but is not limited
to Authorization and Cookie. to Authorization and Cookie.
4. Change the request method according to the redirecting status 4. Change the request method according to the redirecting status
code's semantics, if applicable. code's semantics, if applicable.
5. If the request method has been changed to GET or HEAD, remove 5. If the request method has been changed to GET or HEAD, remove
content-specific header fields, including (but not limited to) content-specific header fields, including (but not limited to)
Content-Encoding, Content-Language, Content-Location, Content-Encoding, Content-Language, Content-Location,
Content-Type, Content-Length, Digest, ETag, Last-Modified. Content-Type, Content-Length, Digest, Last-Modified.
| *Note:* In HTTP/1.0, the status codes 301 (Moved Permanently) | *Note:* In HTTP/1.0, the status codes 301 (Moved Permanently)
| and 302 (Found) were defined for the first type of redirect | and 302 (Found) were defined for the first type of redirect
| ([HTTP/1.0], Section 9.3). Early user agents split on whether | ([HTTP/1.0], Section 9.3). Early user agents split on whether
| the method applied to the redirect target would be the same as | the method applied to the redirect target would be the same as
| the original request or would be rewritten as GET. Although | the original request or would be rewritten as GET. Although
| HTTP originally defined the former semantics for 301 and 302 | HTTP originally defined the former semantics for 301 and 302
| (to match its original implementation at CERN), and defined 303 | (to match its original implementation at CERN), and defined 303
| (See Other) to match the latter semantics, prevailing practice | (See Other) to match the latter semantics, prevailing practice
| gradually converged on the latter semantics for 301 and 302 as | gradually converged on the latter semantics for 301 and 302 as
skipping to change at page 198, line 46 skipping to change at page 198, line 46
+------+-------------------+-------------------------+------+ +------+-------------------+-------------------------+------+
Table 12 Table 12
19. References 19. References
19.1. Normative References 19.1. Normative References
[CACHING] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke, [CACHING] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke,
Ed., "HTTP Caching", Work in Progress, Internet-Draft, Ed., "HTTP Caching", Work in Progress, Internet-Draft,
draft-ietf-httpbis-cache-latest, July 2021, draft-ietf-httpbis-cache-latest, August 2021,
<https://datatracker.ietf.org/doc/html/draft-ietf-httpbis- <https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-
cache-latest>. cache-latest>.
[RFC1950] Deutsch, L.P. and J-L. Gailly, "ZLIB Compressed Data [RFC1950] Deutsch, L.P. and J-L. Gailly, "ZLIB Compressed Data
Format Specification version 3.3", RFC 1950, Format Specification version 3.3", RFC 1950,
DOI 10.17487/RFC1950, May 1996, DOI 10.17487/RFC1950, May 1996,
<https://www.rfc-editor.org/info/rfc1950>. <https://www.rfc-editor.org/info/rfc1950>.
[RFC1951] Deutsch, P., "DEFLATE Compressed Data Format Specification [RFC1951] Deutsch, P., "DEFLATE Compressed Data Format Specification
version 1.3", RFC 1951, DOI 10.17487/RFC1951, May 1996, version 1.3", RFC 1951, DOI 10.17487/RFC1951, May 1996,
skipping to change at page 202, line 12 skipping to change at page 202, line 12
HTTP/2", RFC 7541, DOI 10.17487/RFC7541, May 2015, HTTP/2", RFC 7541, DOI 10.17487/RFC7541, May 2015,
<https://www.rfc-editor.org/info/rfc7541>. <https://www.rfc-editor.org/info/rfc7541>.
[HTTP/1.0] Berners-Lee, T., Fielding, R.T., and H.F. Nielsen, [HTTP/1.0] Berners-Lee, T., Fielding, R.T., and H.F. Nielsen,
"Hypertext Transfer Protocol -- HTTP/1.0", RFC 1945, "Hypertext Transfer Protocol -- HTTP/1.0", RFC 1945,
DOI 10.17487/RFC1945, May 1996, DOI 10.17487/RFC1945, May 1996,
<https://www.rfc-editor.org/info/rfc1945>. <https://www.rfc-editor.org/info/rfc1945>.
[HTTP/1.1] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke, [HTTP/1.1] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke,
Ed., "HTTP/1.1", Work in Progress, Internet-Draft, draft- Ed., "HTTP/1.1", Work in Progress, Internet-Draft, draft-
ietf-httpbis-messaging-latest, July 2021, ietf-httpbis-messaging-latest, August 2021,
<https://datatracker.ietf.org/doc/html/draft-ietf-httpbis- <https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-
messaging-latest>. messaging-latest>.
[HTTP/2] Belshe, M., Peon, R., and M. Thomson, Ed., "Hypertext [HTTP/2] Belshe, M., Peon, R., and M. Thomson, Ed., "Hypertext
Transfer Protocol Version 2 (HTTP/2)", RFC 7540, Transfer Protocol Version 2 (HTTP/2)", RFC 7540,
DOI 10.17487/RFC7540, May 2015, DOI 10.17487/RFC7540, May 2015,
<https://www.rfc-editor.org/info/rfc7540>. <https://www.rfc-editor.org/info/rfc7540>.
[HTTP/3] Bishop, M., "Hypertext Transfer Protocol Version 3 [HTTP/3] Bishop, M., "Hypertext Transfer Protocol Version 3
(HTTP/3)", Work in Progress, Internet-Draft, draft-ietf- (HTTP/3)", Work in Progress, Internet-Draft, draft-ietf-
skipping to change at page 233, line 45 skipping to change at page 233, line 45
o In Section 7.4, check all target URIs for scheme semantic o In Section 7.4, check all target URIs for scheme semantic
mismatches (<https://github.com/httpwg/http-core/issues/896>) mismatches (<https://github.com/httpwg/http-core/issues/896>)
o In Section 9.3.1, Section 9.3.2, and Section 9.3.5, clarify o In Section 9.3.1, Section 9.3.2, and Section 9.3.5, clarify
(again) that sending content in a request for a method that does (again) that sending content in a request for a method that does
not define such content will not interoperate without prior not define such content will not interoperate without prior
agreement, even if it is parsed correctly, and cannot be relied agreement, even if it is parsed correctly, and cannot be relied
upon by an origin server unless they control the entire request upon by an origin server unless they control the entire request
chain (<https://github.com/httpwg/http-core/issues/904>) chain (<https://github.com/httpwg/http-core/issues/904>)
C.19. Since draft-ietf-httpbis-semantics-17
o In Section 15.4, remove incorrect mention of Etag as requst field
(<https://github.com/httpwg/http-core/issues/914>)
Acknowledgements Acknowledgements
Aside from the current editors, the following individuals deserve Aside from the current editors, the following individuals deserve
special recognition for their contributions to early aspects of HTTP special recognition for their contributions to early aspects of HTTP
and its core specifications: Marc Andreessen, Tim Berners-Lee, Robert and its core specifications: Marc Andreessen, Tim Berners-Lee, Robert
Cailliau, Daniel W. Connolly, Bob Denny, John Franks, Jim Gettys, Cailliau, Daniel W. Connolly, Bob Denny, John Franks, Jim Gettys,
Jean-François Groff, Phillip M. Hallam-Baker, Koen Holtman, Jeffery Jean-François Groff, Phillip M. Hallam-Baker, Koen Holtman, Jeffery
L. Hostetler, Shel Kaphan, Dave Kristol, Yves Lafon, Scott L. Hostetler, Shel Kaphan, Dave Kristol, Yves Lafon, Scott
D. Lawrence, Paul J. Leach, Håkon W. Lie, Ari Luotonen, Larry D. Lawrence, Paul J. Leach, Håkon W. Lie, Ari Luotonen, Larry
Masinter, Rob McCool, Jeffrey C. Mogul, Lou Montulli, David Morris, Masinter, Rob McCool, Jeffrey C. Mogul, Lou Montulli, David Morris,
 End of changes. 9 change blocks. 
10 lines changed or deleted 16 lines changed or added

This html diff was produced by rfcdiff 1.44jr. The latest version is available from http://tools.ietf.org/tools/rfcdiff/