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

Targets, origins & intermediaries

02

A URI identifies the resource. Proxies and gateways may sit between the caller and its origin.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

DIAGRAM§ 4.3 ↗
RFC 9110 · § 4.3EXAMPLE
3 / 3
Targets, origins & intermediariesA URL is split into scheme, host, port, and path. A proxy forwards to that authority; certificate verification appears on the HTTPS origin.Route to an authorityExample: https://docs.example:443/guidehttpsschemedocs.examplehost443port/guidepathClientuser agentProxyOrigintargetforwardConnection-specific options removed at the hopCertificate identity matches docs.exampleVerify the HTTPS origin identity
03
Establish HTTPS authority.

The TLS connection and certificate checks establish the expected server identity.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
KEY POINT

Route a request without losing the target authority.

  • An origin is identified by its scheme, host, and port.
  • Host or :authority conveys authority information; routing must honor the target URI.
  • HTTPS requires an authenticated secure connection and certificate identity checks.
DETAILS

An intermediary can forward, cache, or transform under defined rules. Connection-specific fields must not be blindly forwarded to the next hop.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. One meaning, many transports
  2. Targets, origins & intermediaries
  3. Fields, content & representations
  4. Methods & retry safety
  5. Content negotiation
  6. Validators & conditional requests
  7. Range requests
  8. Status codes & redirects
  9. Caches & revalidation
  10. Authentication, security & extensions
RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗