Le sigle URL (de l'anglais Uniform Resource Locator, littéralement « localisateur uniforme de ressource »), auquel se substitue informellement le terme adresse web, désigne une chaîne de caractères utilisée pour adresser les ressources du World Wide Web : document HTML, image, son, forum Usenet, boîte aux lettres électronique, etc. Les URLs constituent un sous-ensemble des identifiants uniformisés de ressource (URI), les seules URI à avoir trouvé une application pratique. Le format (syntaxe) d'une URL est décrit dans le RFC 3986.
En 2008, l'usage du féminin ou du masculin pour l'abréviation « URL » (un ou une URL ?) semble assez flottant. En France, d'après le Journal officiel du 16 mars 1999, « URL » peut être traduit par adresse réticulaire ou adresse universelle.
Comme les adresses URL ont été conçues pour le web et qu'elles sont utilisées pour identifier les pages et les sites web, elles sont aussi appelées adresses web. L'article sur les adresses web porte sur l'identité des sites web et les aspects techniques, économiques et juridiques qui s'y rattachent, ainsi que des différentes traductions en français de l'acronyme URL.
Cet article décrit les URL en tant que standard technique : toutes les formes qu'elles peuvent prendre, notamment pour pointer des ressources hors du Web, ainsi que les principaux usages techniques.
Une URL est une chaîne de caractères combinant les informations nécessaires pour indiquer à un logiciel comment accéder à une ressource Internet. Ces informations peuvent notamment comprendre le protocole de communication, un nom d'utilisateur, un mot de passe, une adresse IP ou un nom de domaine, un numéro de port TCP/IP, un chemin d'accès, une requête.
Les informations nécessaires varient selon la ressource et le contexte d'utilisation de l'URL. En outre un identificateur de fragment peut être ajouté à la fin d'une URL pour identifier un élément à l'intérieur de la ressource. Bien que l'identificateur de fragment ne fasse pas formellement partie de l'URL, il est également décrit dans cet article et dans les standards techniques.
Une URL absolue permet d'indiquer comment accéder à une ressource indépendamment de tout contexte où elle peut être précisée ou transmise. Elle commence par l'indication d'un schéma de représentation (spécifique au protocole de communication utilisé pour accéder à cette ressource), suivi de l'ensemble des paramètres permettant de localiser sur le réseau le service hébergeant la ressource, puis permet de préciser à ce service le nom d'une ressource à traiter, transmettre des données de traitement, acheminer et récupérer les résultats, puis de préciser éventuellement quelle partie de ce résultat sera utilisée.
Exemple : http://Jojo:[email protected]:8888/chemin/d/acc%C3%A8s.php?q=req&q2=req2#signet
http
- protocole de communication, en l’occurrence ici HTTP pour accéder à un serveur web.:
- caractère de séparation obligatoire si le schéma est précisé.//
- chaîne de caractères pour les protocoles dont la requête comprend un chemin d'accès, permettant de préciser et localiser le service avant ce chemin.Jojo
- nom d’utilisateur, notamment utile pour accéder à des parties non publiques d'un site web:
- caractère de séparation si un mot de passe est indiqué.lApIn
- mot de passe de l'utilisateur, indiqué ici en clair.@
- caractère terminant les données d'identification présentes avant le nom du service.www.example.com
- nom de domaine du service, on peut parfois utiliser plutôt son adresse IP. Si le nom de service ou l’adresse peuvent contenir des caractères réservés comme :
, le nom de service ou l'adresse sera encadré de crochets doubles [[ ]]
. Lui même se décompose en: www
: sous-domaine (par défaut www)example
: nom de domaine de deuxième niveaucom
: nom de domaine de premier niveau:
- caractère indiquant qu’un numéro de port est précisé en suffixe8888
- numéro de port TCP/IP du serveur HTTP, doit être précisé lorsqu’il ne s’agit pas du port standard pour le protocole utilisé (qui est 80 pour HTTP, 21 pour FTP, …).[1234:abcd::1234]:8888
- Dans le cas d'une adresse IPv6, si on veut spécifier le port, il est obligatoire de mettre l'adresse entre crochets pour ne pas confondre le port et l'adresse./chemin/d/
- chemin absolu (commençant par un /
) sur le service contenant la page web, obligatoire pour les services à chemin d’accès (par défaut ce chemin sera /
).acc%C3%A8s.php
- nom de la page web, optionnel (de nombreux services web déterminent un nom de ressource par défaut pour chaque chemin indiqué) ; on remarque qu’un caractère non ASCII comme « è » est codé en « %C3%A8
» (au moyen d’un codage de caractère Unicode sous la forme UTF-8 avant transformation des octets non ASCII en notation hexadécimale à deux chiffres par octet). L'extension n'a aucune signification directe pour le client, mais en revêt parfois pour le serveur qui l’utilise localement pour savoir comment traiter la ressource demandée et la présenter au client.?
- caractère de séparation obligatoire pour indiquer que des données complémentaires suivent.q=req&q2=req2
- chaîne de requête, traitée par la page web sur le serveur#
- caractère de séparation obligatoire pour indiquer un signet (ou une balise).signet
- identificateur du signet ou de la balise, il s’agit d’un emplacement à l’intérieur de la page web retournée par le service, cette donnée sera traitée par le navigateur web.Quelques exemples pratiques :
http://fr.wikipedia.org/
http://fr.wikipedia.org/wiki/Uniform_Resource_Locator
ftp://ftp.rfc-editor.org/in-notes/rfc2396.txt
mailto:[email protected]
news:fr.comp.infosystemes.www.auteurs
gopher://gopher.quux.org/
protocole://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志
Les protocoles utilisant un chemin hiérarchique permettent l'utilisation d'URL relatives. Une URL relative ne contient ni protocole ni nom de domaine. Ceux-ci sont déduits à partir de l'URL de la ressource contenant l'URL relative.
Les URL relatives sont souvent utilisées pour les hyperliens à l'intérieur d'un même site web. Si le document d'URL http://fr.wikipedia.org/wiki/Web
contient l'URL relative Navigateur
, cela correspond à http://fr.wikipedia.org/wiki/Navigateur
. Les URL relatives sont directement inspirées de la syntaxe des systèmes de fichiers Unix. L'usage d'URL relatives permet de copier l'ensemble d'un site web sur un autre serveur web sans avoir à changer les URL.
L'URL :
./
correspond au dossier actuel ;../
correspond au dossier parent ;/
correspond au dossier racine.Syntaxe :
scheme://[username[:password]@](hostname|ip)[:port][/path/][?query][#fragment]
Exemple :