Appendix B. Changes from Previous RFCs
This appendix summarizes the major changes in RFC 9110 compared to previous related RFCs. RFC 9110 consolidates and updates the core semantics of HTTP/1.1, replacing the RFC 7230-7235 series of specifications.
B.1. Changes from RFC 2818
RFC 2818 defined the use of HTTPS. Major changes include:
- Integration of HTTPS definition into the HTTP semantics specification
- Updated requirements and recommendations for certificate validation
- Enhanced guidance for secure connections
B.2. Changes from RFC 7230
RFC 7230 defined HTTP/1.1 message syntax and routing. Major changes include:
- Separation of message abstraction from HTTP/1.1-specific syntax
- Reorganization of field syntax and semantics descriptions
- Updated requirements for connection management and proxy behavior
- Clarification of message forwarding and transformation rules
B.3. Changes from RFC 7231
RFC 7231 defined HTTP/1.1 semantics and content. Major changes include:
- Improved description of method semantics
- Enhanced definition and usage guidance for status codes
- Updated content negotiation mechanisms
- Refined semantics of representation metadata
- Improved security and privacy considerations
B.4. Changes from RFC 7232
RFC 7232 defined HTTP/1.1 conditional requests. Major changes include:
- Clarification of validator generation and comparison rules
- Improved conditional request processing semantics
- Updated guidance for ETag and Last-Modified usage
- Enhanced description of precondition evaluation
B.5. Changes from RFC 7233
RFC 7233 defined HTTP/1.1 range requests. Major changes include:
- Improved syntax and semantics of range requests
- Updated multipart range response handling
- Enhanced caching guidance for partial content
- Clarification of range unit extensibility
B.6. Changes from RFC 7235
RFC 7235 defined the HTTP/1.1 authentication framework. Major changes include:
- Improved definition and registration of authentication schemes
- Enhanced syntax for challenges and credentials
- Updated concept of protection spaces
- Improved security considerations related to authentication
B.7. Changes from RFC 7538
RFC 7538 defined the 308 (Permanent Redirect) status code. Major changes include:
- Integration of 308 status code into the core status code set
- Consistent description with other redirect status codes
- Updated deployment considerations and best practices
B.8. Changes from RFC 7615
RFC 7615 defined HTTP authentication scheme registration. Major changes include:
- Updated registration procedures for authentication schemes
- Integration into unified IANA Considerations section
- Improved guidance for new authentication schemes
B.9. Changes from RFC 7694
RFC 7694 defined HTTP client-initiated content coding. Major changes include:
- Integration of content coding related concepts
- Updated Accept-Encoding semantics
- Improved content coding negotiation mechanism
Overall Changes
RFC 9110, as a unified specification for HTTP semantics, includes major improvements:
- Structural Reorganization - Separation of HTTP semantics from version-specific (HTTP/1.1) syntax
- Terminology Unification - Standardization of terminology usage across the HTTP specification family
- Semantic Clarification - Resolution of many long-standing ambiguities and implementation differences
- Enhanced Security - Updated security and privacy related considerations and recommendations
- Improved Extensibility - Clearer extension points and registration guidance
- Version Independence - Semantic definitions applicable to all HTTP versions (HTTP/1.1, HTTP/2, HTTP/3, etc.)
Note: For detailed change lists and technical details, please refer to Appendix B of RFC 9110.