HTTP

超文本传输协议 (HTTP) 是用于传输超媒体文档(例如 HTML)的 application-layer 协议。它专为 Web 浏览器和 Web 服务器之间的通信而设计,但也可用于其他目的。HTTP 遵循经典的 客户端-服务器模型,客户端打开连接以发出请求,然后等待直到收到响应。HTTP 是 无状态协议,这意味着服务器不保留两个请求之间的任何数据(状态)。

¥Hypertext Transfer Protocol (HTTP) is an application-layer protocol for transmitting hypermedia documents, such as HTML. It was designed for communication between web browsers and web servers, but it can also be used for other purposes. HTTP follows a classical client-server model, with a client opening a connection to make a request, then waiting until it receives a response. HTTP is a stateless protocol, meaning that the server does not keep any data (state) between two requests.

教程

¥Tutorials

通过指南和教程了解如何使用 HTTP。

¥Learn how to use HTTP with guides and tutorials.

HTTP 概述

客户端-服务器协议的基本特性:它可以做什么及其预期用途。

HTTP 缓存

缓存对于快速网站非常重要。本文介绍了不同的缓存方法以及如何使用 HTTP 标头来控制它们。

Cookie 的工作原理由 RFC 6265 定义。当提供 HTTP 请求时,服务器可以随响应一起发送 Set-Cookie HTTP 标头。然后,客户端将每次请求以 Cookie 请求标头的形式返回到同一服务器的 cookie 值。cookie 还可以设置为在特定日期过期,或者限制为特定域和路径。

跨域资源共享 (CORS)

跨站点 HTTP 请求是对来自与发出请求的资源的域不同的域的资源的 HTTP 请求。例如,域 A (http://domaina.example/) 的 HTML 页面通过 img 元素请求域 B (http://domainb.foo/image.jpg) 上的图片。如今,网页通常会加载跨站点资源,包括 CSS 样式表、图片、脚本和其他资源。CORS 允许 Web 开发者控制其站点对跨站点请求的反应方式。

HTTP 客户端提示

客户端提示是一组响应标头,服务器可使用它们主动向客户端请求有关设备、网络、用户和用户代理特定首选项的信息。然后,服务器可以根据客户端选择提供的信息来确定要发送哪些资源。

HTTP 的演变

简要描述 HTTP 的早期版本、现代 HTTP/2、新兴的 HTTP/3 及更高版本之间的变化。

Mozilla 网络安全指南

帮助运营团队创建安全 Web 应用的提示集合。

HTTP 消息

描述 HTTP/1.x 和 HTTP/2 不同类型消息的类型和结构。

典型的 HTTP 会话

显示并解释普通 HTTP 会话的流程。

HTTP/1.x 中的连接管理

描述 HTTP/1.x 中可用的三种连接管理模型、它们的优点和缺点。

参考

¥Reference

浏览详细的 HTTP 参考文档。

¥Browse through detailed HTTP reference documentation.

HTTP 标头

HTTP 消息头用于描述资源,或者服务器或客户端的行为。报头字段在 IANA HTTP 字段名称注册表 中维护,其中包括 有关其状态的信息,可能是 "permanent"(标准定义)、"provisional"(新)、"deprecated"(不推荐使用)或 "obsolete"(不再使用)。

HTTP 请求方法

可以使用 HTTP 完成的不同操作:GETPOST,以及不太常见的请求,如 OPTIONSDELETETRACE

HTTP 状态响应代码

HTTP 响应代码指示特定 HTTP 请求是否已成功完成。回复分为五类:信息响应、成功响应、重定向、客户端错误和服务器错误。

CSP 指令

Content-Security-Policy 响应标头字段允许网站管理员控制允许用户代理为给定页面加载的资源。除了少数例外,策略主要涉及指定服务器源和脚本端点。

工具和资源

¥Tools & resources

用于理解和调试 HTTP 的有用工具和资源。

¥Helpful tools and resources for understanding and debugging HTTP.

火狐开发者工具

网络监控

Mozilla 天文台

该项目旨在帮助开发者、系统管理员和安全专业人员安全可靠地配置其站点。

RedBot

检查缓存相关标头的工具。

浏览器的工作原理 (2011)

关于浏览器内部结构和通过 HTTP 协议的请求流的非常全面的文章。