RFC: https://tools.ietf.org/html/rfc7230 1. 介绍 1.1 要求表示法1.2 语法表示法 2. 结构 2.1 客户端/服务器消息2.2 实施多样性2.3 中介2.4 缓存2.5 一致性和错误处理2.6 协议版本2.7 统一资源标识符 2.7.1 http URI格式2.7.2 https URI格式2.7.3 http和https URI规范化和比较 3. 消息格式 3.1 开始行 3.1.1 请求行3.1.2 状态行 3.2 头字段 3.2.1 字段扩展性3.2.2 字段顺序3.2.3 空白3.2.4 字段解析3.2.5 字段限制3.2.6 字段值组件 3.3 消息体 3.3.1 传输编码3.3.2 内容长度3.3.3 消息体长度 3.4 处理不完整消息3.5 消息解析健壮性 4. 传输编码 4.1 分块传输编码 4.1.1 分块扩展4.1.2 分块报尾部分4.1.3 解码分块 4.2 压缩编码 4.2.1 Compress编码4.2.2 Deflate编码4.2.3 Gzip编码 4.3 TE4.4 Trailer 5. 消息路由 5.1 识别目标资源5.2 连接入站5.3 请求目标 5.3.1 原始形式5.3.2 完整形式5.3.3 授权形式5.3.4 星号形式 5.4 Host5.5 有效的请求URI5.6 将响应与请求关联5.7 消息转发 5.7.1 Via5.7.2 转换 6. 连接管理 6.1 Connection6.2 建立6.3 保持 6.3.1 重试请求6.3.2 管道化 6.4 并发6.5 失败和超时6.6 销毁6.7 Upgrade 7. ABNF列表扩展:#规则8. IANA注意事项 8.1 头字段注册8.2 URI方案注册8.3 互联网媒体类型注册 8.3.1 互联网媒体类型message/http8.3.2 互联网媒体类型application/http 8.4 传输编码注册 8.4.1 程序8.4.2 注册 8.5 内容编码注册8.6 Upgrade令牌注册 8.6.1 程序8.6.2 注册 9. 安全注意事项 9.1 建立权威9.2 中介的风险9.3 通过协议元素长度的攻击9.4 响应分裂9.5 请求走私9.6 信息完整性9.7 消息机密性9.8 服务器日志信息的隐私 10. 致谢11. 引用 11.1 规范性参考11.2 信息参考 附录A. HTTP版本历史 A.1 从HTTP/1.0的改变 A.1.1 多宿主Web服务器A.1.2 Keep-Alive连接A.1.3 Transfer-Encoding介绍 A.2 从RFC2612的改变 附录B. 收集的ABNF