超文本传输协议是一个无状态的应用层请求应答协议,它使用灵活的语义和有效的自描述消息,与基于网络的超文本信息系统灵活的互动。本文档是构成HTTP/1.1规范的一系列文档的第一份。

    1. 消息语法和路由(本文档RFC7230)
    2. 语义和内容(RFC7231)
    3. 条件请求(RFC7233)
    4. 范围请求(RFC7234)
    5. 缓存(RFC7234)
    6. 认证(RFC7235)

    这份HTTP/1.1规范使RFC2616和RFC2145(在HTTP版本控制上)过时。该规范还更新了CONNECT的使用以建立之前在RFC2817中定义的隧道,并且定义了在RFC2818中非正式描述的“https”URI方案。

    HTTP是一个信息系统的通用接口协议。它旨在通过向独立于所提供资源类型的客户端呈现统一的接口来隐藏服务实现的细节。同样的,服务端不需要知道每个客户端的目的:可以孤立的考虑一个HTTP请求,而不是与特定类型的客户端或是预定的应用步骤顺序相关联。结果是可以在许多不同的上下文中有效使用的协议,并且随着时间的推移可以独立地实现这些协议。

    HTTP同样作为转换传输至非HTTP信息系统以及从HTTP系统发出会话的中间协议使用。HTTP代理和网关通过将他们的各种协议转换为可读切可被客户端以和HTTP服务相同方式进行操作的超文本格式来提可替换的信息服务访问。

    这种灵活性的一个结果是不能通过接口背后的内容进行定义。相反的,我们还限制了定义通信的语法,被接收的通信的意图,和接收者的预期行为。如果孤立的看待通信,那么成功的行为应该反应在正确的由服务器提供的可观察的接口上的改变。但是,由于多个客户端可能是同时行动并且可能跨目的,我们不能要求这种变化可以超出单一响应范围。

    该文档描述了HTTP中使用或涉及到的结构元素,定义了“http”和“https”的URI方案,描述了总体的网络操作和连接管理,并且定义了HTTP的消息框架和转发要求。我们的目标是定义独立于消息语义的HTTP消息处理所需的所有机制,从而定义消息解析器和消息转发中介的完整要求集。