Workshop Internet-Präsenz

Der Uniform Resource Locator

  1. Der Oberbegriff: Uniform Resource Identifier, URI
  2. Der Aufbau des Uniform Resource Locators, URL
  3. Missbrauch des Uniform Resource Locaters
  4. Uniform Resource Name, URN
  5. Uniform Resource Characteristics, URC
  6. Referenzen

Der Oberbegriff: Uniform Resource Identifier, URI

Der Uniform Resource Identifier, URI, benennt eine im Internet vorhandene Ressource. Die URI kann in folgenden Formen notiert werden, d.h., sie stellt deren Oberbegriff dar:

  1. als Lokation/Adresse: Uniform Resource Locator (URL),
  2. als Name: Uniform Resource Name (URN)
  3. mit Metainformationen: Uniform Resource Characteristics (URC)

Bisher ist nur der Uniform Resource Locator im Einsatz, die weiteren Formen sind noch in der Diskussionsphase. Sie gehen in allen Fällen über die Möglichkeiten des Uniform Resource Locators hinaus. Die bisher ausschließliche Nutzung des URL darf aber nicht zur Gleichsetzung von URI und URL führen.

Allen Formen ist der Aufbau der URI gemein:

<schema>:<schema-specific-part>#<fragment>

Der Aufbau soll im Folgenden am Beispiel des Uniform Resource Locator beschrieben werden.

Der Aufbau des Uniform Resource Locators, URL

Der URL adressiert beliebige Medienangebote im Internet, er spezifiziert die genaue Adresse (Domainname, Verzeichnis) des gewünschten Dokuments und das Übertragungsprotokoll des gewünschten Dokuments. Von letzterem hängt dann ja auch die Wahl des Server- bzw. Klient-Programms ab. Die URL ist wie folgt aufgebaut, Teile in eckigen Klammern müssen nicht immer angegeben werden (ohne Leeräume):

Schema://[Nutzer[:Kennwort]@]Host.Domain[:Port][/Pfad]/Dateiname [?Parameter] [#Textmarke]

Das Schema legt das Übertragungsprotokoll fest und kann z.B. sein:

  • file (eine Datei des eigenen lokalen Systems),
  • ftp (eine Datei auf einem FTP-Server),
  • http (eine Datei auf einem WWW-Server),
  • gopher (eine Datei auf einem Gopher-Server),
  • wais (eine Datei auf einem WAIS-Server),
  • news (eine Usenet-Newsgroup),
  • nntp (eine Usenet-Newsgroup mit nntp-Zugriff),
  • mailto (eine E-Mail; ohne //) und
  • telnet (eine Verbindung zu einem Telnet-basierten Service)

Es folgt der Servername (genau genommen sind die beiden Schrägstriche Bestandteil der Serverbezeichnung zur Unterscheidung von einem Verzeichnis); auch hier sind verschiedene Formen möglich:

Danach kann der gewünschte Port angegeben werden; die Portangabe kann entfallen, wenn der (dem Browsern bekannte) Standardport gewählt wird. Im Falle des WWW ist dies der Port 80. Die Angabe „:80“ kann wahlweise entfallen oder geschrieben werden. Jede andere Angabe, wie z.B. „:8080“ muss in jedem Fall geschrieben werden. Die Portangabe wird vom Server dazu benutzt, die verschiedendsten Anforderungen sofort zum richtigen Serverprogramm weiterzuleiten.

Wenn ein Angebot nur einem bestimmten Nutzer zugänglich ist, so kann dem Servernamen der Nutzername (sein Account-Name) und, durch einen Doppelpunkt getrennt, sein Passwort mit angegeben werden. In jedem Fall muss dann das @-Zeichen folgen. Beispiel:

ftp://anonymous@ftp.ein-server.de/

Wenn keine Nutzerangabe benötigt wird, so wird sie ignoriert. Wir werden darauf zurückkommen, kann sich doch dahinter ein Missbrauch verbergen.

Danach können Pfade und Dateinamen folgen. Der erste Schrägstrich nach dem Servernamen bedeutet das Wurzelverzeichnis des entsprechenden Dienstes. Unterschiedliche Dienste können auf ein und demselben Rechner unterschiedliche Wurzelverzeichnisse besitzen.

Wird kein Pfad, also gar nichts angegeben, so wird eine Datei aus dem Wurzelverzeichnis gewählt. Wird keine Datei angegeben, so wählt der Server eine Standard-Datei aus dem entsprechenden Verzeichnis, meist kennt der Web-Server mehrere Alternativen, z.B. index.html, index.htm, home.html oder welcome.html.

Danach könnten dem Datenamen Parameter folgen, die für den Aufbau der dynamischen Webseite benötigt werden. Dies ist eine Seite, deren Inhalt erst anhand der vorgegebenen Parameter zum Anforderungszeitpunkt erstellt wird. Ein typisches Beispiel sind z.B. Suchmaschinenaufrufe oder Datenbankabfragen. Mehrere Parameter werden typischerweise durch einen Ampersand (&) oder durch ein Pluszeichen getrennt. Beispiel:

http://server.de/beispiel.php?name=mueller&ort=halle

Die letzte Angabe stellt eine Textmarke dar, d.h. einen Einsprungpunkt in das gewählte Dokument. Es ist somit möglich, nicht nur am Dokumentanfang anzulangen, sondern auch an jede beliebige Stelle des Dokuments selbst. Die Textmarke muss natürlich im Dokument definiert sein. Eine fehlerhafte Textmarkenangabe wird ignoriert. Beispiel:

http://server.de/beispiel.html#zweiteskapitel

Letztlich kann eine URL doch eine sehr umfangreiche Angabe darstellen, einige Vereinfachungen, wie z.B. das Weglassen des Dateinamens, gibt es aber dennoch.

Missbrauch des Uniform Resource Locaters

Man kann durch relativ einfache Mittel und die Unerfahrenheit der Leser ausnutzend, den Leser auf eine andere Webseite als die vermutete oder erwartete locken. Der Zweck ist in der Regel zwielichtig, entweder gibt es spezielle Angebote oder Viren bzw. Betriebssystemangriffe frei Haus.

Der Weg ist immer derselbe: Ein bekannter Domänenname wird als Nutzerkennzeichen oder als Subdomäne eingetragen, wie folgende Beispiele zeigen:

  • http://www.spiegel.de@ein-server.de (man achte auf das @!)
  • http://www.spiegel.de.ein-server.de

In beiden Fällen gelangt man nicht zu www.spiegel.de, sondern zu ein-server.de. In erstem Falle muss der Nutzer nicht existieren, wenn das Webangebot ohnehin frei ist.

Uniform Resource Name, URN

Im Unterschied zum URL legt ein URN nicht fest, wo ein Dokument physikalisch liegt. Das erlaubt eine verteilte Speicherung und den Zugriff auf die „nächstgelegene“ Kopie. Ein Directory Service setzt einen URN in einen oder mehrere URLs um. Die wichtigsten Eigenschaften sollen sein: ihre globale Eindeutigkeit und dauerhafte Beständigkeit. Letztlich erfüllt die URN denselben Zweck für URLs wie der Domänenname für IP-Adressen.

Aufbau: "urn:" <nid> ":" <nss>

Dem Schlüsselwort folgt der Namenraum-Bezeichner (nid, Namespace Identifier) und eine dokumentspezifische Zeichenkette für diesen Namenraum-Bezeichner (nss, Namespace Specific String). Der Namenraum-Bezeichner besteht sowohl aus dem Standard bzw. der Normbezeichnung (naming authority scheme identifier), z.B. z.B. IANA (Internet Assigned Numbers Authority), ISBN, ISSN, gefolgt von der verantwortlichen Stelle, die URNs erstellen darf. Beispiel:

URN:IANA:merit.edu:2469291

In der aktuellen Diskussion muss aber u.a. noch geklärt werden, ob ein Text in verschiedenen Varianten über eine identische URN anzusprechen ist.

Uniform Resource Characteristics, URC

Eine URC behandelt eine beliebig tiefgehende bzw. beliebig erweiterbare Internet-Resource. Von einer minimalen Beschreibung ausgehend, können andere Nutzer diese bei Bedarf ständig um weitere Metainformationen erweitern, das sind Angaben, die über die Benennung und Adressierung des Dokuments hinausgehen, z.B. Autor, Änderungsangaben, verfügbare Sprachen usw. Eine URC muß (wohl) mindestens die Angaben der URN und die URL enthalten. Auch hier ist die Diskussion noch nicht abgeschlossen; es gibt noch keinen Vorschlag (RFC), erwähnt wird sie in der RFC 1737 und RFC 2168.

Referenzen