Allgemeine Syntax und Protokoll
Enscheidende Voraussetzung für den erfolgreichen Zugriff auf Ressourcen im Internet ist die richtige Adressierung. Diese geschieht durch durch die Angabe eines URLs (Uniform Ressource Locator). Diese Angabe hat ganz allgemein folgende Syntax:
<Protokoll>:<protokollspezifischer Teil>
Als Protokoll kommen dabei z. B. http, ftp, mailto, news etc. in Frage. Je nach Protokoll hat der spezifische Teil einen anderen Aufbau. Im Folgenden soll die URL-Syntax für eine Webseite (http-Protokoll) erläutert werden:
http://<Hostname>:<Port>/<Zugriffspfad>?<Argument>=<Wert>&<Argument>=<Wert>#<Anker>
Element | Erklärung |
Hostname | Domain-Name oder IP des Servers, der die Datei liefern soll |
Port | Portnummer; standardmäßig Port 80, wenn nicht anders angegeben |
Zugriffspfad | Pfad zu einer Datei oder einem Verzeichnis |
Argument, Wert | Parameter für dynamische Webseiten |
Anker | Markierte Stelle innerhalb des Dokuments |
Die einzige zwingende Angabe in einer URL (außer der Angabe des Protokolls) ist der Hostname. Dieser kann entweder als Domain-Name oder als IP-Adresse angegeben werden. So kann z. B. schon mit der URL
http://www.ufg.ac.at
eine gültige Webseite aufgerufen werden. Zur selben Seite gelangt man unter Eingabe der IP-Adresse:
http://193.170.96.81
Ein Domain-Name ist in der Regel nach folgendem Schema aufgebaut: host.subdomain.second-level-domain.top-level-domain und wird von hinten nach vorne gelesen:
1. Top-Level-Domain: kann organisationsspezifisch oder länderspezifisch sein. Beispiele hierfür sind:
a) organisationsspezifisch: .com für kommerzielle Organisationen und Firmen, .net oder .org etc.
b) länderspezifisch: .at für Österreich, .de für Deutschland etc.
2. Second-Level-Domain: Beliebiger, aber unter der Top-Level-Domain einzigartiger Name (z. B. Firmenname); eine Kombination aus Second-Level-Domain und Top-Level-Domain wird registriert, d. h. diese Domain wird für einen Eigentümer reserviert.
3. Subdomain: nicht zwingend erforderlich; Teilnetz bzw. Untergruppe der Domain - dafür ist der Domain-Inhaber verantwortlich.
4. Host: nicht zwingend erforderlich; derjenige Rechner, von dem Daten abgerufen werden; weist meist auf den verwendeten Dienst hin (FTP-Dateien, News, WWW-Seiten).
Eine IP-Adresse (nach IP Version 4) ist 32 Bit lang, z. B. "193.170.96.80". Sie ist in 4 Byte zerlegt und wird durch Punkte voneinander getrennt. Jedes Byte kann einen Wert von 0 bis 255 annehmen(xxx.xxx.xxx.xxx).
Die Angabe des Protokolls "http://" wird - wenn nicht selbst eingegeben - vom Webbrowser ergänzt. Die Portnummer ist für http-Anfragen standardmäßig 80, sonst muss sie explizit angegeben werden. Dies würde so aussehen:
http://www.ufg.ac.at:80
Wird - wie im vorigen Beispiel - kein Pfad oder Dateiname angegeben, so liefert der Webserver automatisch die Standard-Datei index.html o.ä. aus dem obersten (Root-)Verzeichnis der angegebenen Domain. Welche Datei vom Webserver genommen wird, ist in den Server-Einstellungen festgelegt. Ausgehend vom Root-Verzeichnis der Domain kann auch ein Verzeichnis-Pfad angegeben werden. Dann wird die Standard-Datei aus dem angegebenen Verzeichnis geliefert; falls in dem Verzeichnis keine solche Standard-Datei existiert, wird die Verzeichnisstruktur an den Client weitergegeben. Mit
http://www.univie.ac.at/de/studium.html
kann eine ganz bestimmte Datei - nämlich die HTML-Datei "studium.html" im Verzeichnis "/de" der Domain "www.univie.ac.at" abgerufen werden.
Über das http-Protokoll können nicht nur HTML-Dateien abgerufen werden, sondern viele andere mehr. Um welchen Dateityp es sich handelt, erkennt man an der Endung der Datei. Folgende Tabelle gibt einen Überblick über häufig vorkommende Typen von Webseiten:
Endung | Datei-Typ | Beschreibung |
.html, .htm | HTML | "klassische" Webseite in HTML (Hypertext Markup Language) |
.php, .asp, jsp | PHP, ASP, JSP | dynamische Webseite mit serverseitigem Skript |
.cgi | CGI-Script | |
.shtml | Secure HTML | |
... |
Die Übergabe von Variablen in eine Webseite kann mit Hilfe von Argumenten, die in der URL aufgeführt sind, erfolgen. Dazu muss der betreffende Dateiname angegeben werden, gefolgt von einem Fragezeichen und einer Listen von Argumenten, denen jeweils ein Wert zugewiesen wird, getrennt durch das Zeichen &. Die Österreich-Seite von Adobe wird z. B. mit
http://www.adobe.de/main.html?c=at
aufgerufen, wobei der Variablen "c" (country) der Wert "at" (für Österreich) zugewiesen wird. Sollen mehrere Variablen übergeben werden - z. B. Angabe von Land und Sprache ("l" (language)="de" (deutsch))- dann könnte die URL so aussehen:
http://www.adobe.de/main.html?c=at&l=de
In der Datei "main.html" findet dann eine Verarbeitung der übergebenen Variablen statt. Die Seite wird in der angegebenen Sprache (hier: deutsch) und mit dem angegebenen Inhalt (hier: österreichspezifisch) angezeigt.
Zwei weitere Anwendungsgebiete der Parameterübergabe seien hier genannt: Auch für die Übergabe von Usernam und/oder Passwort oder einer Session-ID (Kennung einer Sitzung, zu der sich der Benutzer ev. vorher angemeldet hat) wird die URL häufig verwendet. Ausserdem gibt es in Formularen von HTML-Seiten die Möglichkeit, die enthaltenen Variablen mit der GET-Methode (siehe auch Modul Variablen in Webseiten) - d. h. als Teil der URL - übergeben werden.
Besonders für längere HTML-Dokumente können benannte Ankerpunkte (Lesezeichen) festgelegt werden. Diese Stellen im Text können über die URL unter Angabe des Ankerpunktes direkt angesteuert werden. Auf der Seite der Medienforschung des ORF können z. B. mit
http://mediaresearch.orf.at/c_glossar/c_glossar.htm#e
die Einträge im Glossar mit Anfangsbuchstaben "E" direkt angesteuert werden. Dabei wird die ganze Seite, die alle Einträge von A bis Z enthält, geöffnet und bis zum Buchstaben E "gescrollt". An dieser Stelle befindet sich in der HTML-Seite ein Anker-Eintrag mit dem Namen "e".
Nach http-Standard ist die Länge der Zeichenkette einer URL nicht beschränkt, können also beliebig lang sein. Dabei ist allerdings zu beachten, dass manche Webbrowser (z. B. der Internet Explorer mit 2048 Zeichen, ältere Browser meist weniger), Webserver (oft 1024 Zeichen), Proxyserver (zwischengeschaltete Server) etc. die Länge der URL limitieren. Allgemein wird empfohlen, URLs auf 255 Zeichen zu beschränken.