Autorité d'une URI
L'autorité d'une URI est la section qui vient après le schéma et avant le chemin. Elle peut comporter jusqu'à trois parties : les informations utilisateur, l'hôte et le port.
Syntaxe
host
host:port
user@host
user@host:port
host-
L'hôte est généralement le nom de domaine ou l'adresse IP du serveur hébergeant la ressource. Le nom de domaine est résolu en adresse IP via le système de noms de domaine.
portFacultatif-
Le port est un nombre qui indique le port sur lequel le serveur écoute les requêtes. Il est optionnel et vaut par défaut 80 pour HTTP et 443 pour HTTPS. D'autres schémas peuvent définir leur propre valeur par défaut ou le rendre obligatoire.
userFacultatif-
L'utilisateur est optionnel et sert à l'authentification. Il est rarement utilisé dans les URI web.
Attention : Il est déconseillé de fournir des informations utilisateur directement dans les URLs HTTP, car cela peut exposer des informations sensibles. Utilisez plutôt d'autres méthodes comme l'authentification HTTP ou les cookies de session. Parfois, des sites de phishing trompent les utilisateur·ice·s en affichant des URLs trompeuses dont la partie « utilisateur » ressemble à un nom de domaine, ce qu'on appelle une attaque par URL sémantique (angl.).
Description
Considérez l'URL suivante :
http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument
L'autorité dans ce cas est www.example.com:80, composée du nom d'hôte (spécifiquement un nom de domaine) et d'un port.

www.example.com est le nom d'hôte de l'URI, indiquant quel serveur Web est sollicité. Ici, on utilise un nom de domaine, mais il est aussi possible d'utiliser une adresse IP de l'hôte.
Comme les adresses IP sont moins pratiques et plus difficiles à retenir, il est plus courant d'utiliser un nom de domaine, sauf si le serveur n'en possède pas.

:80 est le port de l'URL, indiquant la « porte » technique utilisée pour accéder aux ressources sur le serveur web. Il est généralement omis si le serveur web utilise les ports standards du protocole HTTP (80 pour HTTP et 443 pour HTTPS) pour donner accès à ses ressources. Sinon, il est obligatoire.
Exemples
https://developer.mozilla.org-
L'hôte est
developer.mozilla.org. Le port n'est pas défini mais sera par défaut 443 si l'accès se fait viahttps:. http://localhost:8080-
L'hôte est
localhostet le port est8080.localhostest un nom d'hôte spécial que le navigateur résout à l'adresse locale127.0.0.1. postgresql://postgres:admin123@db:5432-
L'hôte est
db, et le port est5432. On précise aussi un utilisateurpostgreset son mot de passeadmin123. Cela peut servir à se connecter à une base PostgreSQL. https://cnn.example.com&story=breaking_news@10.0.0.1-
Une URL trompeuse qui semble pointer vers un site de confiance. Cependant, le nom d'hôte est
10.0.0.1, et la partiecnn.example.com&story=breaking_newsest l'« utilisateur ».
Spécifications
| Specification |
|---|
| Unknown specification> # section-3.2> |