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
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:
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.
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.
: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 aufhttps:
zugegriffen wird. http://localhost:8080
-
Der Host ist
localhost
und der Port ist8080
.localhost
ist ein spezieller Hostname, den der Browser zur lokalen Adresse127.0.0.1
auflöst. postgresql://postgres:admin123@db:5432
-
Der Host ist
db
, und der Port ist5432
. Es wird auch ein Benutzerpostgres
und dessen Passwortadmin123
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 Teilcnn.example.com&story=breaking_news
ist der "Benutzer".
Spezifikationen
Specification |
---|
Unknown specification # section-3.2 |