Skip to main content

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:

  1. Structural Reorganization - Separation of HTTP semantics from version-specific (HTTP/1.1) syntax
  2. Terminology Unification - Standardization of terminology usage across the HTTP specification family
  3. Semantic Clarification - Resolution of many long-standing ambiguities and implementation differences
  4. Enhanced Security - Updated security and privacy related considerations and recommendations
  5. Improved Extensibility - Clearer extension points and registration guidance
  6. 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.