Uniform Resource Locator
Cet article ne cite pas suffisamment ses sources (avril 2007).
Si vous connaissez le thème traité, merci d'indiquer les passages à sourcer avec {{Référence souhaitée}} ou, mieux, incluez les références utiles en les liant aux notes de bas de page. (Modifier l'article)
|
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[réf. nécessaire]. 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[1].
Sommaire |
[modifier] Adresse web
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.
[modifier] Usages
Les URL ont été inventées pour pouvoir indiquer avec une notation (d'où l'adjectif « uniforme ») aux navigateurs web comment accéder à toutes les ressources d'Internet.
[modifier] Hyperliens
Chaque hyperlien du web est construit avec l'URL de la ressource pointée, insérée avec une certaine syntaxe dans un document source (ou dans un programme ou dans une interface utilisateur) qui le contient pour indiquer la localisation d'une autre ressource (un document) ou fragment de ressource (une ancre cible dans cet autre document). Lorsqu'on active un hyperlien, le navigateur web peut présenter son URL dans une barre d'état (voir ci-dessous pour la « barre d'adresse »).
Un hyperlien peut aussi être construit de façon externe au document lui-même, dans une base de données référençant toutes les paires (URL source, URL cible) entre une zone activable d'un document source et une ancre cible dans un document (qui peut être le même que le document source contenant la zone activable).
L'hyperlien peut aussi être construit de façon inversée, en insérant dans le document cible l'URL de la zone source.
[modifier] Barre d'adresse
Chaque navigateur web dispose d'une « barre d'adresse » affichant l'URL de la ressource consultée. Il est en outre possible de saisir une URL dans cette barre d'adresse pour consulter une ressource dont on connaît l'URL.
Si le support le permet, on peut aussi trouver l'URL correspondant à un lien en positionnant la souris sur l'image ou le texte approprié. L'URL peut alors être présentée dans une barre d'état ou une bulle d'information.
[modifier]
Les navigateurs web conservent un historique des URL consultées. Cela leur permet de reconnaître et présenter de manière distinctive les hyperliens vers des ressources déjà consultées.
[modifier] Pages favorites
Il suffit à un navigateur web de conserver l'URL d'une ressource pour constituer une liste de favoris (ou marque-pages). Lorsqu'un titre de ressource existe, les navigateurs le conservent aussi, ce qui permet d'afficher le titre d'une page plutôt que son URL.
[modifier] Fonctionnement
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.
[modifier] URL absolue
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:lApIn@www.example.com:8888/chemin/d/acc%C3%A8s.php?q=req&q2=req2#signet
- Schéma de représentation, normalement obligatoire (mais certains clients web peuvent tenter de déterminer le schéma à partir de la forme du nom du service codé ci-dessous)
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é.
- Localisation complète de la ressource, représentée selon le schéma de représentation ci-dessus
- Emplacement du service hébergeant la ressource sur l’espace du réseau global
//
- 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.- Données d’authentification (optionnelles, le service peut les demander séparément de façon plus sécurisée que via l’URL)
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
- Indication optionnelle d’un numéro de port (au cas où le même serveur possède des services n’utilisant pas le port par défaut pour le protocole de communication)
:
- 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.
- Emplacement du service hébergeant la ressource sur l’espace du réseau global
-
- Nom complet de la ressource à demander sur le service une fois connecté
/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.
- Données supplémentaires optionnelles, transmises au service lors de la demande à la ressource
- Nom complet de la ressource à demander sur le service une fois connecté
- Données supplémentaires optionnelles, pour l’exploitation de la ressource après son obtention par le logiciel client (non transmises dans la requête au service)
#
- 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 :
- URL de Wikipédia :
http://fr.wikipedia.org/
- URL de cette page sur Wikipédia :
http://fr.wikipedia.org/wiki/Uniform_Resource_Locator
- URL d'un fichier sur un site FTP :
ftp://ftp.rfc-editor.org/in-notes/rfc2396.txt
- URL d'un lien (mailto) vers une adresse courriel :
mailto:Quidam.no-spam@example.com
- URL d'un forum de discussion de Usenet :
news:fr.comp.infosystemes.www.auteurs
- URL d'un site Gopher :
gopher://gopher.quux.org/
- Une URL en chinois devrait avoir la forme suivante :
protocole://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志
[modifier] URL relative
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.
[modifier] Utilisateur et Mot de passe
Syntaxe :
scheme://[username[:password]@]hostname|ip[:port][/path/][?query][#fragment]
Exemple :
- ftp://nom@exemple.com/
- http://nom@127.0.0.1:8080/
- http://nom:123456@exemple.com/chemin/?parametre1=test
- ...
[modifier] Voir aussi
[modifier] Notes et références
[modifier] Articles connexes
[modifier] Standardisation (en anglais)
Documents définissants les recommandations et normalisations liées aux URLs :
- URIs, URLs, and URNs: Clarifications and Recommendations 1.0, 21 septembre 2001, rapport d'un groupe joint W3C/IETF sur les questions d'adressage ;
- RFC 3986/STD 0066 Uniform Resource Identifier (URI): Generic Syntax, défini la syntaxe et la sémantique des URI, URL et URN. Remplace la RFC 1738, modifie les RFC 2732, 2396 et 1808. Cette RFC a le statut de standard (STD 0066). Défini l'usage d'adresses au format IPv6 dans les URL ;
- RFC 1630 Universal Resource Identifiers in WWW, présente les URI, URL et URN, obsolète. Ancêtre de la RFC 1738 ;
- RFC 1738 Uniform Resource Locators (URL) La RFC qui a longtemps servi de base à la définition des URL et des URI. Elle définissait le format des URL pour différents protocoles, comme Gopher, Mailto, etc. Le format des URL pour les requêtes de ces différents protocoles, sont maintenant traités à part des dans documents propres à chacun. Obsolète, remplacée par la RFC 3986 ;
- RFC 1808 Relative Uniform Resource Locators, normalise les URL relatives, révisé par la RFC 3986 ;
- RFC 2368 The mailto URL scheme, normalise les URL de boîte aux lettres électronique ;
- RFC 2396 Uniform Resource Identifiers (URI): Generic Syntax, révisée par la RFC 3986, révisait anciennement les RFC 1738 et RFC 1808 ;
- RFC 2732 Format for Literal IPv6 Addresses in URL's, normalise l'usage d'adresses au format IPv6 dans les URL. Révisée par la RFC 3986.