Zum Hauptinhalt springen

1. Introduction (Einführung)

Das Hypertext Transfer Protocol (HTTP, Hypertext-Übertragungsprotokoll) ist ein zustandsloses Anfrage/Antwort-Protokoll, das durch den Austausch von Nachrichten über eine zuverlässige Transport- oder Session-Layer-Verbindung funktioniert. Dieses Dokument ist der erste Teil einer Dokumentreihe, die HTTP/1.1 definiert.

Der Hauptinhalt dieses Dokuments umfasst:

  • Eine Übersicht über die HTTP-Architektur und die zugehörige Terminologie
  • Die Definition der "http" und "https" Uniform Resource Identifier (URI, Einheitlicher Ressourcenbezeichner) Schemata
  • Die HTTP/1.1-Nachrichtensyntax und Parsing-Anforderungen
  • Sicherheitsüberlegungen bezüglich der Implementierung

Die HTTP/1.1-Nachrichtensyntax und Parsing-Anforderungen wurden gegenüber RFC 2616 überarbeitet, um die Interoperabilität zu verbessern und bekannte Mehrdeutigkeiten zu reduzieren. Dieses Dokument ersetzt bestimmte Teile von RFC 2616 und wird zusammen mit anderen Dokumenten verwendet, die die HTTP/1.1-Semantik definieren.

Die anderen Teile von HTTP sind in den folgenden unabhängigen Dokumenten definiert:

  1. "Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content" [RFC7231] - definiert Anfragemethoden, Statuscodes und andere mit der Protokollsemantik zusammenhängende Elemente
  2. "Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests" [RFC7232] - definiert Mechanismen für bedingte Anfragen
  3. "Hypertext Transfer Protocol (HTTP/1.1): Range Requests" [RFC7233] - definiert Teilanfragen und -antworten
  4. "Hypertext Transfer Protocol (HTTP/1.1): Caching" [RFC7234] - definiert Cache-Anforderungen und -Steuerung
  5. "Hypertext Transfer Protocol (HTTP/1.1): Authentication" [RFC7235] - definiert das Benutzerauthentifizierungs-Framework

1.1. Requirements Notation (Anforderungsnotation)

Die Schlüsselwörter "MUSS", "DARF NICHT", "ERFORDERLICH", "SOLL", "SOLL NICHT", "SOLLTE", "SOLLTE NICHT", "EMPFOHLEN", "KANN" und "OPTIONAL" in diesem Dokument sind wie in [RFC2119] beschrieben zu interpretieren.

Konformitätskriterien und Überlegungen werden in Section 2.5 beschrieben.

1.2. Syntax Notation (Syntaxnotation)

Diese Spezifikation verwendet die Augmented Backus-Naur Form (ABNF, Erweiterte Backus-Naur-Form) Notation von [RFC5234] mit einer Listenerweiterung, die in Section 7 definiert ist und die kompakte Definition von durch Kommas getrennten Listen unter Verwendung eines #-Operators ermöglicht.

Die folgenden Kernregeln sind als Referenz enthalten, wie in [RFC5234], Anhang B.1 definiert: ALPHA (Buchstaben), CR (Wagenrücklauf), CRLF (CR LF), CTL (Steuerzeichen), DIGIT (Dezimalzahl 0-9), DQUOTE (doppeltes Anführungszeichen), HEXDIG (Hexadezimalzahl 0-9/A-F/a-f), HTAB (horizontaler Tabulator), LF (Zeilenvorschub), OCTET (8-Bit-Datensequenz), SP (Leerzeichen) und VCHAR (sichtbares US-ASCII-Zeichen).

Als Konvention bezeichnen ABNF-Regelnamen mit dem Präfix "obs-" "veraltete" Grammatikregeln, die aus historischen Gründen erscheinen.