Visual RFC.
ALL RFCs / RFC 9110
Read the RFC ↗

RFC 9110 / START HERE

HTTP, before the details

HTTP: Hypertext Transfer Protocol

HTTP defines the meaning of requests and responses used by websites and many APIs. A client asks for an action on a resource, and a server reports the result.

The idea in one picture

  1. A client makes a request

  2. The server interprets it

  3. A response describes the result

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Browsers, servers, and intermediaries need a shared vocabulary for reading pages, sending data, reporting errors, and describing content.

A familiar example

Your browser requests a product page. The server responds with a status code, information about the content, and the page itself.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. One meaning, many transportsGET has a shared meaning whether an exchange uses HTTP/1.1, HTTP/2, or HTTP/3.
  2. Targets, origins & intermediariesA URI identifies the resource. Proxies and gateways may sit between the caller and its origin.
  3. Fields, content & representationsThe same resource can have many representations. Fields explain how to interpret the selected bytes.
  4. Methods & retry safetyReading, replacing, processing, and deleting have different semantics, especially after a connection fails.
  5. Content negotiationThe caller can express preferences for media type, language, or coding; the server chooses a representation.
  6. Validators & conditional requestsA validator lets a client ask whether cached content is current or whether an edit would overwrite a newer version.
  7. Range requestsA client can request a byte range without downloading an entire selected representation again.
  8. Status codes & redirectsStatus codes report progress, success, redirection, client errors, or server errors.
  9. Caches & revalidationA cache can reuse a prior response when allowed. Stale entries can sometimes be validated without retransmitting content.
  10. Authentication, security & extensionsChallenge-response authentication, origin boundaries, and registered extensions keep HTTP extensible without making every field trustworthy.
Start with chapter one →
EXPLORE THIS PROTOCOL

HTTP versions

HTTP semantics apply across versions. HTTP/2 and HTTP/3 change how messages travel; all three guides remain relevant.

This introduction explains RFC 9110 (2022). Read the original RFC ↗