Definition

Uniform Resource Identifier (URI)

Was ist ein Uniform Resource Identifier (URI)?

Ein Uniform Resource Identifier (URI) ist eine Zeichenfolge, die eine logische (abstrakte) oder physische Ressource identifiziert – in der Regel, aber nicht immer, mit einer Verbindung zum Internet. Die in einem URI enthaltenen Zeichenfolgen, wie zum Beispiel ein Schemaname und ein Dateipfad, dienen als Identifikatoren.

URIs können verschiedene Arten von Ressourcen identifizieren, darunter die folgenden:

  • elektronische Dokumente
  • Webseiten
  • Bilder
  • Informationsquellen mit einem einheitlichen Zweck

Ein Uniform Resource Locator (URL) oder eine Webadresse ist die gängigste Form einer URI. Er wird verwendet, um Websites oder andere mit dem Internet verbundene Ressourcen eindeutig zu identifizieren und zu lokalisieren.

Abbildung 1: URIs umfassen URLs und URNs.
Abbildung 1: URIs umfassen URLs und URNs.

Was ist der Zweck eines Uniform Resource Identifier?

URIs unterscheiden eine Ressource von einer anderen; sie sind vor allem im World Wide Web von Bedeutung. URIs ermöglichen es Internetprotokollen, Interaktionen zwischen Ressourcen wie Binärdaten, Fotos, Videos und Text zu erleichtern.

URIs kennzeichnen jede dieser Ressourcen. Auf diese Weise können Internetprotokolle die Ressourcen identifizieren, die abgerufen werden müssen, damit Benutzer beim Surfen im Internet darauf zugreifen können.

Neben der Identifizierung und dem Abruf von Webressourcen werden URIs auch in den folgenden Fällen verwendet:

  • Ein Benutzer öffnet einen E-Mail-Client.
  • Ein Benutzer möchte Textnachrichten senden.
  • JavaScript soll ausgeführt werden.

Was ist ein Beispiel für einen Uniform Resource Identifier?

Eine URI ist lediglich eine Folge spezifischer Zeichen, die eine bestimmte Ressource im Internet identifizieren. Diese Zeichen ändern sich je nach Art der Ressource.

Eine URI, die den Zugriff auf einen Remote-Computer angibt, kann beispielsweise wie folgt aussehen:

  • telnet://192.0.2.16:80

Eine URI, die ein E-Book auf der Computerweekly-Website angibt, sieht hingegen wie folgt aus:

  • https://www.computerweekly.com/de/ehandbook/Endpunkte-schuetzen-und-absichern/

Die URI eines Blogs kann wie folgt aussehen:

  • https://www.techtarget.com/blog/this-is-the-blog-title

Eine URI kann auch eine Telefonnummer angeben:

  • tel:+49-89-123-XXXX

Oder sie kann eine E-Mail-Adresse angeben:

Was ist eine Datei-URI?

Eine Datei-URI wird verwendet, um eine Datei auf einem Host-Computer zu identifizieren. Sie hat immer diese Syntax:

  • file://host/path

Hier bezieht sich host auf den vollqualifizierten Domänennamen eines Systems. Wenn der Hostname nicht angegeben ist, wird localhost angenommen. Dies bezieht sich auf das System, auf dem die URL interpretiert wird. Die URI kann auch einen leeren Hostnamen enthalten.

Der Pfad ist ein hierarchischer Verzeichnispfad und verweist auf den Speicherort einer Datei auf diesem System. In der URI-Syntax trennt immer ein einzelner Schrägstrich den Hostnamen und den Pfadnamen. Wenn kein Hostname angegeben ist, lautet die URI-Syntax file:/path. Wenn das Verzeichnis Unterverzeichnisse enthält, können diese mit zusätzlichen Schrägstrichen in die Syntax aufgenommen werden.

Hier sind einige Beispiele für Datei-URIs:

  • Unter UNIX: file://localhost/etc/fstab.
  • Unter Windows: file://localhost/c:/WINDOWS/clock.avi.

So funktionieren Uniform Resource Identifiers

Eine URI bietet eine einfache, erweiterbare Möglichkeit, Internetressourcen zu identifizieren. Da sie Einheitlichkeit gewährleisten, können verschiedene Arten von Ressourcenbezeichnern im gleichen Kontext verwendet werden, unabhängig von den Mechanismen, mit denen auf diese Ressourcen zugegriffen wird. Die Ressourcenbezeichner können auch in verschiedenen Kontexten wiederverwendet werden.

Angenommen, ein Benutzer möchte über einen Browser wie Google Chrome auf ein E-Book unter www.computerweekly.de zugreifen. Das E-Book ist mit einer bestimmten URI verknüpft. So funktioniert das:

In diesem Fall handelt es sich bei der Ressource um ein E-Book, sodass dem Benutzer ein Formular wie in Abbildung 1 angezeigt wird, über das er es herunterladen kann.

Screenshot E-Handbook herunterladen
Abbildung 2: Formular zum Herunterladen des E-Books.

Wenn es sich bei der erforderlichen Ressource um ein Video handelt, lautet die URI anders. Die Funktionsweise ist jedoch dieselbe. Wenn der Server die Ressource abruft, wird sie wie in Abbildung 2 auf dem Browserbildschirm angezeigt.

Screenshot Videodatei
Abbildung 3: Eine Videodatei, die abgespielt werden kann.

Syntax für Uniform Resource Identifiers

Die allgemeine Form eines URI-Schemas lautet:

  • Schema://Autorität:Port/URL-Pfad?URL-Abfrage#URL-Fragment

Die meisten URIs enthalten einige oder alle der folgenden Elemente: Schemaname, Autorität, Dateipfad, Abfrage und Fragment. Im Beispiel des Computerweekly-E-Books lässt sich die Syntax wie folgt aufschlüsseln:

In der URI kann der Dateipfad leer sein. Solange der Schemaname angegeben ist, erfüllt die URI ihre Aufgabe, eine Ressource von einer anderen zu unterscheiden. Darüber hinaus sind Port, Abfrage und Fragment optionale Komponenten. Sie sind in der URI des E-Books nicht sichtbar.

Hier finden Sie eine Aufschlüsselung der wichtigsten Elemente einer URI.

Schema/Scheme (nicht optional)

Das erste Element innerhalb der URI ist der Schemaname. Das Schema ist nicht case-sensitiv und durch einen Doppelpunkt vom Rest des Objekts getrennt. Das Schema legt die konkrete Syntax fest und gibt an, welche Protokolle der Browser für diese URI verwenden muss.

Idealerweise sollten URI-Schemas bei der Internet Corporation for Assigned Names and Numbers (ICANN) registriert sein, es können jedoch auch nicht registrierte Schemas verwendet werden.

Beispiel: Wenn die URI telnet://192.0.2.16:80 lautet, ist der Schemaname telnet.

Autorität/Zuständigkeit (nicht optional)

Die Autoritätskomponente der URI besteht aus mehreren Teilen: einem Host, der entweder aus einem registrierten Namen oder einer IP-Adresse besteht, einem optionalen Authentifizierungsabschnitt und einer optionalen Portnummer.

Der Authentifizierungsabschnitt enthält den Benutzernamen und das Passwort, getrennt durch einen Doppelpunkt und gefolgt vom Symbol für at (@). Nach dem @ folgt der Hostname, gefolgt von einem Doppelpunkt und einer Portnummer. IPv4-Adressen werden üblicherweise in Dezimalpunktnotation angegeben, während IPv6-Adressen, die in Klammern stehen müssen, in der Regel in Hexadezimalform angegeben werden.

IPv6-Adressen
Abbildung 4: Ein Beispiel für die verschiedenen Segmente einer IPv6-Adresse.

Der Pfad, der die Daten enthält, wird durch eine Folge von Segmenten angegeben, die durch Schrägstriche getrennt sind. Diese Schrägstriche implizieren eine hierarchische Struktur. Der Pfad beginnt mit einem einzelnen Schrägstrich, unabhängig davon, ob eine Autorität vorhanden ist oder nicht. Der Pfad darf jedoch nicht mit einem doppelten Schrägstrich beginnen. Dieser Teil der Syntax ähnelt zwar stark einem bestimmten Dateipfad, impliziert jedoch nicht immer eine Beziehung zu diesem Dateisystempfad.

Im vorherigen URI-Beispiel (telnet://192.0.2.16:80) ist ein Schemaname vorhanden. Die Zahlen nach dem doppelten Schrägstrich bilden die Autorität. Da nach dem Schrägstrich keine Zeichen folgen, bedeutet dies, dass der Pfad leer ist.

Bei Webressourcen ist die Autorität der Hostname oder Domänenname (Website) der URI. Es kann sich auch um eine IP-Adresse handeln. Sie gibt an, welcher Webserver angefordert wird.

Pfad/Path (nicht optional)

Der URI-Pfad ist der spezifische Speicherort der angeforderten Ressource auf dem Webserver der Domain. Er kann zum Beispiel wie folgt aussehen: file:///C:/Users/Blogs/Documents/revolutionizing-content-with-intent-driven-insights/.txt.

Hier verweist alles nach „file:///“ auf das spezifische Dokument.

Abfrage/Query (optional)

Die Abfrage enthält eine Zeichenfolge nicht hierarchischer Daten. Oft handelt es sich um eine Folge von Attribut-Wert-Paaren, die durch ein Trennzeichen wie ein kaufmännisches Und-Zeichen (&) oder ein Semikolon getrennt sind. Ein Fragezeichen trennt die Abfrage von dem Teil, der davor steht.

Die Zeichenfolge steht für eine Operation, die von der URI auf ein abfragbares Objekt angewendet wird.

Beispiel

In der URI foo://techtarget.com:8042/over/there?name=parrot#beak lautet die Abfrage name=parrot#beak.

Da dieser Teil der Syntax jedoch optional ist, ist er möglicherweise nicht immer vorhanden.

Fragment (optional)

Das Fragment enthält eine Kennung, die eine Sekundärressource angibt. Ein Hash (#) trennt es vom vorangehenden Teil der URI.

Wenn es sich bei der primären Ressource um ein HTML-Dokument oder einen Artikel handelt, kann das Fragment ein ID-Attribut eines bestimmten Elements dieser Ressource sein. In diesem Fall scrollt der Webbrowser zu diesem bestimmten Element.

Wenn die Fragment-ID jedoch ungültig ist, bedeutet dies, dass sich die URI auf das gesamte Objekt bezieht. In diesem Fall kann das Hash-Zeichen weggelassen werden.

Port (optional)

Eine URI kann auch eine Portnummer enthalten. Diese wird jedoch in der Regel weggelassen, wenn der Webserver die Standardports des HTTP- (80) oder HTTPS-Protokolls (443) verwendet. Wenn andere Ports verwendet werden, müssen diese angegeben werden, damit der Browser die erforderlichen Ressourcen abrufen kann.

Die Notwendigkeit einer universellen Syntax

Tim Berners-Lee, der Erfinder des World Wide Web, dokumentierte URIs erstmals im Juni 1994 in der Internet Engineering Task Force (IETF) RFC 1630. Mit diesem Dokument wollte Berners-Lee vor allem eine universelle Syntax für die Identifizierung und den Zugriff auf Objekte im World Wide Web definieren.

Laut Berners-Lee werden für die Suche und den Abruf von Dokumenten mehrere Protokolle und Systeme verwendet. Um den globalen Zugriff auf diese Dokumente auch bei unterschiedlichen Datenformaten zu ermöglichen, ist ein universeller Satz von Namen und Adressen in allen Namensräumen unerlässlich. Dieser Satz ermöglicht es, Objektnamen in verschiedenen Räumen auf einheitliche Weise zu behandeln und den Zugriff auf diese Objekte sowohl mit bestehenden als auch mit zukünftigen/vorgeschlagenen Protokollen zu ermöglichen. Dieses Ziel führte zur Entwicklung von URIs.

Heute sind URIs und ihre generische Syntax in der IETF RFC 3986 definiert. Die im Januar 2005 veröffentlichte RFC 3986 definiert die generische URI-Syntax für das Internet und Sicherheitsaspekte für die Verwendung von URIs im Internet. Die RFC 3986 verwendet den Begriff Ressource in einem allgemeinen Sinne, was bedeutet, dass Ressourcen, die durch URIs identifiziert werden, nicht unbedingt im Internet zugänglich sein müssen.

Auflösung und Referenzierung von Uniform Resource Identifiers

Zwei weitere Aspekte von URIs sind die Auflösung und Referenzen.

Die URI-Auflösung ist eine der wenigen gängigen Operationen, die mit URIs durchgeführt werden, die auch URLs sind. Dabei werden die richtige Datenzugriffsmethode und die erforderlichen Parameter ermittelt, um die Ressource zu finden und abzurufen, die die URI darstellt.

Eine URI-Referenz wird verwendet, um die allgemeine Verwendung einer URI zu bestimmen, und kann als vollständige URI, Teil einer vollständigen URI oder als leere Zeichenfolge erscheinen. Wenn ein Fragmentbezeichner vorhanden ist, identifiziert dieser einen Teil der Ressource, auf die sich der Rest der URI bezieht.

Eine URI-Referenz kann eine URI und eine relative Referenz sein. In diesem Fall entspricht das Präfix der URI-Referenz nicht der Syntax eines Schemas, gefolgt von einem Doppelpunkt als Trennzeichen. Um festzustellen, welche Komponenten vorhanden sind und ob die Referenz relativ ist, wird jede der URI-Komponenten auf ihre Unterteile und ihre Gültigkeit geprüft.

Arten von Uniform Resource Identifiers

URLs, Uniform Resource Names (URNs) und Uniform Resource Characteristics (URCs) sind drei Arten von URIs.

Uniform Resource Locator (URL)

Eine URL wird verwendet, um Webseiten zu identifizieren und zu lokalisieren.

Eine URI identifiziert eine Ressource, impliziert oder garantiert jedoch nicht den Zugriff darauf. Eine URL hingegen identifiziert die Ressource und gibt an, wie auf sie zugegriffen werden kann oder wo sie sich befindet. Aus diesem Grund enthält eine URL eindeutige Komponenten wie das Protokoll, die Domäne und/oder Subdomäne sowie andere URI-Komponenten.

Eine URL ist eine Untergruppe von URIs. Das bedeutet, dass alle URLs URIs sind. Allerdings sind nicht alle URIs URLs. Eine URL beginnt mit der Angabe des Protokolls, das verwendet werden soll, um auf die logische oder physische Ressource in einem bestimmten Netzwerk zuzugreifen und sie zu finden. Daher gilt für URLs Folgendes:

  • Wenn es sich bei der Ressource um eine Webseite handelt, beginnt die URL mit dem Protokoll HTTP oder HTTPS.
  • Wenn es sich bei der Ressource um eine Datei handelt, beginnt die URL mit dem Protokoll FTP.
  • Bei einer E-Mail-Adresse beginnt die URL mit dem Protokoll mailto.

Eine URL ist eine ortsabhängige URI, die dauerhaft sein kann oder auch nicht. Das bedeutet, dass sich die URL ändert, wenn sich der Speicherort der Ressource ändert, um den neuen Speicherort widerzuspiegeln und darauf zu verweisen.

Beispiele für URLs:

  • https://www.computerweekly.com/de/definition/URL-Uniform-Resource-Locator
  • https://datatracker.ietf.org/doc/html/rfc3986
  • https://www.w3.org/Addressing/URL/uri-spec.html

Uniform Resource Name (URN)

Wie eine URL identifiziert eine URN eine Ressource. Im Gegensatz zu einer URL ist eine URN jedoch ortsunabhängig und dauerhaft, das heißt sie identifiziert immer dieselbe Ressource. Eine URN bleibt auch dann bestehen, wenn die Ressource nicht mehr existiert oder nicht mehr verfügbar ist.

Eine URN gibt nicht an, welches Protokoll zum Auffinden und Zugreifen auf die Ressource verwendet werden soll. Stattdessen kennzeichnet sie die Ressource mit einer dauerhaften, ortsunabhängigen und eindeutigen Kennung.

Eine URN besteht aus drei Komponenten:

  • der Bezeichnung urn
  • einem Doppelpunkt
  • einer Zeichenfolge als eindeutige Kennung

Beispiele für URNs (bereitgestellt von IETF RFC 2986):

  • urn:oasis:names:specification:docbook:dtd:xml:4.1.2
  • urn:example:animal:ferret:nose

Uniform Resource Characteristics (URC)

URCs sind Metadaten, die eine bestimmte Ressource beschreiben. Diese Metadaten haben in der Regel die Form von Attribut/Wert-Paaren. Sie können sich auf verschiedene Eigenschaften einer Ressource beziehen, wie zum Beispiel:

  • Name des Autors
  • Name des Herausgebers
  • Kodierung
  • Copyright-Status
  • Zugriffsbeschränkungen

URCs sind sowohl für Menschen als auch für Computer lesbar und dienen dazu, eine Ressource zu beschreiben, um ihr Wissen darzustellen.

URI versus URL

Obwohl die Begriffe URI und URL oft synonym verwendet werden, sind sie unterschiedlich. Eine URI identifiziert eine bestimmte Ressource, während eine URL eine spezielle Art von URI ist, die sowohl eine Ressource identifiziert als auch angibt, wie auf sie zugegriffen werden kann. Mit anderen Worten: URIs sind Ressourcenidentifikatoren, während URLs Ressourcenlokalisierer sind.

Die Analogie zwischen dem Namen und der Adresse einer Person kann diesen Unterschied verdeutlichen. In diesem Fall wäre der Name wie die URI, da er die Person identifiziert. Er sagt jedoch nichts darüber aus, wie die Person gefunden werden kann oder wo sie wohnt. Dazu ist die Adresse erforderlich, genau wie eine URL, wenn es um Ressourcen im Internet geht.

Darüber hinaus kann eine URI verwendet werden, um verschiedene Arten von Dateien und Ressourcen, einschließlich HTML und Extensible Markup Language (XML), zu identifizieren und voneinander zu unterscheiden. URLs können jedoch nur zur Identifizierung und Lokalisierung von Webseiten und Ressourcen verwendet werden. Wenn für eine Domain ein Protokoll wie FTP oder HTTPS vorhanden oder impliziert ist, wird sie als URL bezeichnet, obwohl sie auch eine URI ist.

Ungeachtet dieser Unterschiede haben URIs und URLs eine wichtige Gemeinsamkeit: die Syntax. Wie URIs enthalten auch URLs ein Schema (Protokoll), eine Domäne und einen Pfad. Die anderen Abschnitte, wie Abfrage und Fragment, die in URIs optional sind, sind auch in URLs optional.

Diese Definition wurde zuletzt im Mai 2025 aktualisiert

Erfahren Sie mehr über WAN und Cloud-Networking