URI Authority

Die Authority einer URI ist der Abschnitt, der nach dem Scheme und vor dem Pfad kommt. Sie kann bis zu drei Teile haben: Benutzerinformationen, Host und Port.

Syntax

url
host
host:port
user@host
user@host:port
host

Der Host ist normalerweise der Domainname oder die IP-Adresse des Servers, der die Ressource hostet. Der Domainname wird über das Domain Name System in eine IP-Adresse aufgelöst.

port Optional

Der Port ist eine Nummer, die angibt, auf welchem Port der Server auf Anfragen hört. Er ist optional und standardmäßig 80 für HTTP und 443 für HTTPS. Andere Schemes können ihre eigenen Standards definieren oder ihn verpflichtend machen.

user Optional

Der Benutzer ist optional und wird für Authentifizierungszwecke verwendet. Er wird in Web-URIs nicht häufig genutzt.

Warnung: Es wird nicht empfohlen, Benutzerinformationen direkt in HTTP-URLs anzugeben, da dies sensible Informationen preisgeben kann. Verwenden Sie stattdessen andere Methoden wie HTTP-Authentifizierung oder Session-Cookies. Manchmal führen Phishing-Websites Benutzer in die Irre, indem sie irreführende URLs anzeigen, deren "Benutzer"-Teil so erscheint, als wäre es ein Domainname, bekannt als semantic URL attack.

Beschreibung

Betrachten Sie die folgende URL:

url
http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument

Die Authority in diesem Fall ist www.example.com:80, bestehend aus dem Hostnamen (genauer gesagt einem Domainnamen) und einem Port.

Domain Name

www.example.com ist der Hostname der URI, der angibt, welcher Webserver angefordert wird. Hier verwenden wir einen Domainnamen, aber es ist auch möglich, eine IP-Adresse des Hosts zu verwenden. Da IP-Adressen weniger praktisch und schwerer zu merken sind, ist es üblicher, einen Domainnamen zu verwenden, es sei denn, der Server hat keinen registrierten.

Port

:80 ist der Port der URL, der das technische "Tor" angibt, das zum Zugriff auf die Ressourcen auf dem Webserver verwendet wird. Er wird normalerweise weggelassen, wenn der Webserver die Standardports des HTTP-Protokolls (80 für HTTP und 443 für HTTPS) verwendet, um Zugriff auf seine Ressourcen zu gewähren. Andernfalls ist er erforderlich.

Beispiele

https://developer.mozilla.org

Der Host ist developer.mozilla.org. Der Port ist nicht angegeben, wird aber standardmäßig auf 443 gesetzt, wenn auf https: zugegriffen wird.

http://localhost:8080

Der Host ist localhost und der Port ist 8080. localhost ist ein spezieller Hostname, den der Browser zur lokalen Adresse 127.0.0.1 auflöst.

postgresql://postgres:admin123@db:5432

Der Host ist db, und der Port ist 5432. Es wird auch ein Benutzer postgres und dessen Passwort admin123 angegeben. Dies kann verwendet werden, um eine Verbindung zu einer PostgreSQL-Datenbank herzustellen.

https://cnn.example.com&story=breaking_news@10.0.0.1

Eine irreführende URL, die aussieht, als würde sie auf eine vertrauenswürdige Website verweisen. Der Hostname ist jedoch 10.0.0.1, und der Teil cnn.example.com&story=breaking_news ist der "Benutzer".

Spezifikationen

Specification
Unknown specification
# section-3.2

Siehe auch