Localisateur de ressources uniforme
Une URL ( Uniform Resource Locator ) identifie et localise une ressource, telle qu'un site Web , en utilisant la méthode d'accès à utiliser (par exemple, le protocole réseau utilisé, tel que HTTP ou FTP ) et l' emplacement de la ressource dans les réseaux informatiques . La norme originale a été publiée en décembre 1994 sous le nom de RFC 1738 , elle est depuis devenue obsolète en raison de la publication de plusieurs autres RFC . Les RFC actuels sont (à partir de 2016):
- RFC 3986 . – Identifiant de ressource uniforme (URI) : syntaxe générique . (Anglais).
- RFC 4248 . – Le schéma d'URI telnet . (Anglais).
- RFC 4266 . – Le schéma d'URI Gopher . (Anglais).
- RFC 6068 . – Le schéma d'URI 'mailto' . (Anglais).
- RFC 6196 . – Déplacement du serveur de messagerie : Schéma d'URI vers Historique . (Anglais).
- RFC 6270 . – Le schéma d'URI 'tn3270' . (Anglais).
Les URL sont un sous-type de désignation d'identification générale utilisant des identificateurs de ressources uniformes (URI). Étant donné que les URL sont le premier et le plus courant type d'URI, les termes sont souvent utilisés de manière interchangeable . Dans le langage courant, les URL sont également appelées adresses Internet ou adresses Web , [1] où (suivant l'assimilation commune familière d' Internet et WWW [2] ) on entend principalement les URL de sites Web .
Construction
La structure d'URL de base se compose d'un nom de schéma qui définit la méthode d'accès et d' une partie spécifique au schéma séparée par deux points :
<schéma> :<partie spécifique au schéma>
où scheme
souvent, mais pas nécessairement, est le même que le protocole réseau sous-jacent (par exemple, c'est le cas avec ou mais pas avec ftp
ou ) . [3]http
mailto
file
Les parties d'URL possibles sont par exemplehttp
:
|-------------------- Partie spécifique au schéma ---------------------| https://maxmuster:[email protected]:8080/index.html?p1=A&p2=B#ressource \___/ \_______/ \____/ \_____________/ \__/\_________/ \_______/ \_______/ | | | | | | | | Fragment de requête de chemin de port d'hôte de mot de passe d'utilisateur Schema+ ⁺ (protocole réseau ici)
àmailto
:
mailto:[email protected] \____/ \______/ | | régime⁺ | Adresse e-mail selon RFC 5322 ⁺ (pas de protocole réseau ici)
at news
(dans cet exemple, ni un protocole réseau ni une adresse hôte ne sont inclus) :
news:alt.hypertexte \__/ \___________/ | | régime | Nom du groupe de discussion
àfile
:
fichier:///répertoire/sous-répertoire/fichier \__/ \____________________________________/ | | régime | Chemin d'accès à un fichier local dans le système de fichiers de l'ordinateur qui interprète l'URL
Au sens strict, ce schéma prend la forme file://<host>/<path>
, mais la partie hôte n'est pratiquement pas utilisée, car le file
schéma peut difficilement être utilisé de manière significative sur un réseau en l'absence d'un moyen de spécifier un protocole réseau pour accéder au fichier. [4] Les URL de fichiers sont utilisées, par exemple, dans le langage de
programmation Java pour accéder aux fichiers locaux de cette manière. [5] Selon le navigateur, l'ouverture de file
liens n'est souvent possible qu'après une configuration spéciale côté client ou à l'aide de modules complémentaires , etc. [6] [7]
schéma (schéma)
Détermine quelle méthode technique doit être utilisée pour adresser la ressource. Généralement, mais pas nécessairement, identique au protocole réseau utilisé pour localiser la ressource. Les exemples sont HTTP , HTTPS ou FTP , mais aussi mailto
(pour écrire un e-mail) ou file
(pour accéder à des fichiers locaux).
partie spécifique au schéma
Selon le régime, différentes informations spécifiques sont requises et possibles. Dans la plupart des cas, il commence par la chaîne de caractères //
, mais dans certaines variantes, seuls les deux-points sont définis. Les exemples suivants font référence au protocole de transfert hypertexte (HTTP).
Utilisateur et mot de passe (utilisateur, mot de passe)
Si nécessaire, des informations de connexion composées d' un nom d' utilisateur (user) et d'un mot de passe (password) peuvent également être transmises. Ceux-ci sont précédés de l'hôte par un signe de séparation ( @ ) , séparés les uns des autres par deux-points .
Même si le protocole HTTP a été choisi pour cet exemple , la spécification du nom d'utilisateur et du mot de passe dans le cadre de l'URL ne fait pas partie de la spécification HTTP ! [8] Les navigateurs actuels acceptent cette syntaxe d'URL, mais demandent à l'utilisateur s'il veut vraiment se connecter avec les données fournies. Internet Explorer 6 (à partir de Windows XP SP2) et les versions plus récentes sortent ici de l' ordinaire, en ce sens qu'ils rejettent catégoriquement cette syntaxe d'URL comme étant incorrecte. Une entrée de registre peut être utilisée pour les forcer à se comporter de la même manière que les prédécesseurs jusqu'à la version 5.5 : ils acceptent les données de connexion sans qu'on leur demande et les transfèrent directement au serveur.
Avec certains autres protocoles, tels que FTP , spécifier les données utilisateur sous la forme indiquée est tout à fait correct et couvert par les normes.
héberger
Le composant hôte se présente sous la forme d'une adresse IPv4 en notation décimale séparée par des points, sous la forme d'une adresse IPv6 en notation hexadécimale séparée par deux-points et placée entre crochets ou sous la forme d'un FQDN . [9]
Port
La spécification du port permet de contrôler un port TCP . Si aucun port n'est spécifié, le port standard du protocole respectif est utilisé - par exemple, HTTP 80, HTTPS 443 et FTP 21.
chemin _
Le chemin décrit une ressource spécifique (cela peut, par exemple, correspondre à la structure de répertoire du système cible, c'est-à-dire un fichier ou un répertoire) sur le serveur . Le chemin peut également être vide. Un chemin vide peut éventuellement être remplacé par une barre oblique et est équivalent à cela. [3]
L'interprétation ( fichier ou répertoire ; fournir un fichier texte ou exécuter un script ) est laissée au serveur. Un exemple typique de liberté d'interprétation est le comportement lorsqu'un /
client demande le chemin : Selon le paramétrage, le serveur délivre le contenu d'un fichier nommé (tel que /index.html
, /README
, /HEADER
) sans que cela soit apparent pour le client demandeur. Cependant, selon le protocole, le serveur peut également transmettre explicitement à cette ressource ou générer une liste de répertoires.
requête _
Dans le cas de HTTP, une chaîne de requête peut suivre le pointeur de ressource réel, séparé par un point d' interrogation . [10] Cela permet de transmettre des informations supplémentaires qui peuvent être traitées ultérieurement côté serveur ou côté client.
fragment
Après un hash , une partie de la ressource peut être référencée, typiquement une ancre dans une page HTML, vers laquelle on défile automatiquement après avoir appelé la page : L'URL http://example.com/dokument.html#absatz3
ferait, dans le document fictif ici, faire aller le navigateur vers le début du troisième paragraphe à faire défiler.
exemples
ftp://max:[email protected]
… FTP avec utilisateur et mot de passehttp://de.wikipedia.org
… Site Web sans chemin (ouverture de la page de démarrage )http://de.wikipedia.org/wiki/Uniform_Resource_Locator
... site web avec cheminhttps://de.wikipedia.org
... comme appeler le site Web sans spécifier le chemin, mais avec le protocole de transfert hypertexte sécurisémailto:[email protected]
... pour écrire un e-mail à l'adresse e-mail indiquée (ouvre le client de messagerie standard avec un nouveau message vide dans lequel l'adresse A est pré-remplie)news:alt.hypertext
... Affichage d'un groupe de discussion Usenet (générique, sans préciser le protocole réseau NNTP )nntp:alt.hypertext
... affichage d'un newsgroup Usenet (avec spécification du protocole réseau NNTP)telnet:example.org
... démarrer une session telnetfile:///foo/bar.txt
… accès à un fichier local
URL relatives
Outre les URL absolues ou complètes affichées jusqu'à présent, il existe également des URL relatives. [11] Ils ne sont valides que dans un contexte dont ils héritent des propriétés. Ils manquent d'informations de localisation sur le World Wide Web ou un véritable intranet . Ils sont principalement possibles dans le groupe http, https et ftp, mais aussi avec mailto. Cela correspondrait à un numéro de téléphone sans indicatif régional (du pays, l' indicatif régional ).
début | sens | annotation | Exemple |
---|---|---|---|
// |
Même journal | utile à utiliser http: ou https: de l'environnement actuel
|
//example.com/pfad/zu/datei
|
/ |
Même domaine ( host:port ), " répertoire racine "
|
/pfad/zu/datei
| |
# |
Même ressource | effet sur effet secondaire | #
|
# fragment |
Même ressource, étiquette de saut | #knoten
| |
Rien | Même ressource | ||
../ |
un segment de chemin vers le haut | Un serveur n'a pas à prendre en / charge la segmentation structurée des chemins.
|
/pfad/zur/../zur/datei
|
./ autre |
même segment de chemin |
Les URL relatives sont souvent utilisées pour stocker un groupe de ressources associées dans un système de fichiers local ou à différents emplacements dans différents domaines de réseau et pour les lier les unes aux autres. En dehors de cela, l'interprétation de l'identifiant (chaîne de caractères entre host:port
et #
) appartient à chaque serveur - bien qu'il gère la grande majorité des serveurs et tout logiciel standard comme indiqué ci-dessus, il peut être évalué /
exactement ? % &
selon vos propres règles.
At mailto:
serait une URL relative mailto:Nachbar
(sans @
) - elle n'est valide que sur le réseau local.
Liste des caractères autorisés
Les caractères réservés sont :
- Caractère spécial
/ ? # [ ] @ : $ & ' ( ) * + , ; =
Les caractères non réservés sont :
- Caractère spécial
- . _ ~
- Des lettres
A–Z, a–z
- chiffres
0–9
Dans certains cas, les espaces
(alternativement avec +
, [12] et %
) doivent également être affichés en codage pourcentage . [13]
utilisation de la langue
En allemand, URL a souvent l' article féminin , mais est également utilisé avec l'article masculin. [14] Le choix du genre dépend si l'adresse (féminine) est formée à partir de la traduction allemande ou en utilisant la règle grammaticale selon laquelle les noms se terminent par -or (ici locator ou -identificator ) ou -er ( -identifier , -locator , -anzeiger ) sont toujours masculins en allemand. [15]
URL dans le texte
L'annexe C de la RFC 3986 recommande les URI (et donc les URL) dans le texte
- autonome sur une seule ligne,
- avec des guillemets doubles
"http://example.com/"
ou - avec équerres
<http://example.com/>
contre le contexte et surtout contre la ponctuation de la phrase.
URL et moteurs de recherche
Même si les URL peuvent être techniquement complexes, des URL mal conçues peuvent rendre difficile la recherche de contenu par les moteurs de recherche. Pour cette raison, l'opérateur du moteur de recherche Google recommande z. B. l'utilisation prudente des paramètres dans les URL. [16] Google a également introduit le concept d' URL canonique . Une URL canonique est donc l'URL de la page que Google suppose être la plus représentative des liens multiples sur un site Web. Du point de vue d'un moteur de recherche z. Par exemple, les variantes d'URL "http://www.example.com/" , "http://example.com/" , "https://www.example.com/" und "https://example.com/"
ont quatre versions indépendantes, ce qui - si aucune URL canonique n'est définie - peut conduire à un "contenu dupliqué" et donc à une visibilité sous-optimale.
La structure de l'URL est souvent vérifiée dans le cadre de ce qu'on appelle l'optimisation des moteurs de recherche .
histoire
nom et standardisation
Au début du WWW (à partir de la fin de 1990), il n'y avait info.cern.ch
initialement pas de désignation dédiée pour l'adressage des sites Web dans la documentation, le sujet n'était décrit que comme "adresse de document W3", "nom W3", "adresse W3" ou "Nom hypertexte" documenté. [17] [18] [19] La forme d'adressage spécifiée à cette époque (et utilisée dans les premiers sites Web) correspond déjà à la forme normalisée plus tard comme "URL" ; des changements ont été envisagés pendant le processus de normalisation, mais ont de nouveau été rejetés en raison de la diffusion avancée du WWW. [18] [20]
À l'été 1992, lors de la réunion de l'IETF à Boston, Tim Berners-Lee tente de créer un groupe de travail pour standardiser l'accès aux documents sur le Web. Il a proposé le nom Universal Document Identifier (UDI) , qui, selon lui, devrait définir une norme Internet générale. Le nom a été critiqué comme trop "arrogant", ce qui était principalement dû au mot universel (en anglais pour général , complet ). Au lieu de cela, le terme uniforme plus modeste a été utilisé par le groupe) suggéré. De plus, « Document » a été remplacé par « Ressource » pour souligner que le Web doit être intégré à d'autres systèmes d'information. Le groupe de travail URI s'est finalement réuni, s'accordant sur un autre changement de nom pour la norme à définir : "Identifier" a été remplacé par "Locator" pour souligner que les adresses Web ne sont pas des adresses enregistrées de manière permanente. [21]
En raison des méthodes de travail contradictoires du groupe, le premier projet de normalisation - encore informel - RFC 1630 n'a été présenté par Berners-Lee qu'en juin 1994. [20] Il mentionne dans le titre le nom « Universal Resource Identifiers » privilégié par Berners-Lee et définit déjà les termes URI, URL et URN . En décembre 1994, la norme intitulée "Uniform Resource Locators (URL)" est publiée par le groupe avec la RFC 1738 .
Composants
Berners-Lee a délibérément emprunté les composants individuels des systèmes existants afin de rendre les adresses Web aussi immédiatement familières et logiques que possible pour les nouveaux utilisateurs : [22]
- Le chemin ( ) cite directement la syntaxe du chemin dans les systèmes de fichiers UNIX . [22]
http://www.example.com/verzeichnis/unterverzeichnis/datei.html
- La notation d'hôte, précédée d'une double barre oblique, provient de la syntaxe du système de fichiers réseau Apollo Domain/OS , dans laquelle les chemins sur les hôtes distants étaient adressés par le modèle . [22]
//example.com/verzeichnis/unterverzeichnis/…
- Le fragment marqué d'un dièse est emprunté à la notation standard américaine pour les numéros d' appartement et de suite dans les adresses postales : 12 Foo Avenue #34 signifie Foo Avenue No. 12, Apartment 34 . De même, partie (section, chapitre...) dans le document signifie . [22]
datei.html#ressource
ressource
datei.html
Voir également
- Identifiant d'objet digital
- attaque homographique
- Nom de domaine internationalisé
- Service d'URL courte
- Résolveur de liens , OpenURL , Ex Libris SFX
- sémacode
- typosquattage
- Encodage d' URL (encodage du signe pourcentage)
- Modèle d'URL
Littérature
- Tim Berners-Lee , Mark Fischetti : Le rapport Web. Le créateur du World Wide Web sur le potentiel illimité d'Internet . Econ, Munich 1999, ISBN 3-430-11468-3 (Anglais : Weaving the Web : The Original Design and Ultimate Destiny of the World Wide Web .).
liens web
- RFC 3986 . – Identifiant de ressource uniforme (URI) : syntaxe générique . [Errata : RFC 3986 ]. Janvier 2005. (Remplace RFC 2732 - Mise à jour par RFC 6874 - Anglais).
- T Berners-Lee, L Masinter, M McCahill : RFC 1738 . – Localisateurs de ressources uniformes (URL) . [Errata : RFC 1738 ]. Décembre 1994. (Mise à jour par RFC 1808 - Anglais).
- R. Fielding : RFC 1808 . – Localisateurs de ressources uniformes relatifs . Juin 1995. (Devenu obsolète par RFC 3986 ).
les détails
- ↑ Duden – Dictionnaire universel allemand. 6ème édition.
- ↑ Internet et World Wide Web - la différence. News.de, 29 octobre 2009, récupéré le 11 décembre 2010 .
- ↑ a b RFC 3986 – Uniform Resource Identifier (URI): Generic Syntax . Janvier 2005. Section 3.3 : Parcours. (Anglais).
- ↑ RFC 1738 – Localisateurs de ressources uniformes (URL) . Décembre 1994. Section 3.10 : DOSSIERS. (Anglais).
- ↑ Fichier de classe (API Java 1.5.0). Oracle , récupéré le 11 décembre 2010 .
- ↑ File URI scheme #Browser behavior at English Wikipedia
- ↑ Firefox, par exemple, bloque depuis 2012 tous les accès locaux avec
file:
si le document environnant provient de pour des raisons de sécuritéhttp://
. - ↑ RFC 2616 – Protocole de transfert hypertexte . Section 3.2.2 : URL http. Par défaut : [HTTP/1.1]. (Anglais).
- ↑ RFC 1738 – Localisateurs de ressources uniformes (URL) . Décembre 1994. Section 3.1 : Common Internet Scheme Syntax. (Anglais).
- ↑ RFC 1738 – Localisateurs de ressources uniformes (URL) . Décembre 1994. Section 3.3 : HTTP. (Anglais).
- ↑ RFC 3986 – Uniform Resource Identifier (URI) : Syntaxe générique . Janvier 2005. Section 4.2 : Référence relative. (Anglais).
- ↑ Matas Vaitkevicius : URL encodant le caractère espace : + ou %20 ? Dans : www.stackoverflow.com. 29 avril 2015, récupéré le 8 avril 2016 .
- ↑ Référence de codage d'URL HTML. Sur : w3schools.com. Consulté le 8 avril 2016 .
- ↑ Duden – Dictionnaire universel allemand , voir aussi duden.de
- ↑ corrections.de – Forum – L'URL – La bannière (publicitaire) . Dans : corrections.de .
- ↑ Gardez une structure d'URL simple. Consulté le 25 février 2021 .
- ↑ Détails techniques. CERN/W3C 13 novembre 1992, récupéré le 22 décembre 2010 .
- ↑ a b W3 Naming Schemes. CERN/W3C 24 février 1992, récupéré le 22 décembre 2010 .
- ↑ Syntaxe d'adresse W3 : BNF. CERN/W3C, 29 juin 1992, récupéré le 22 décembre 2010 .
- ^ un b Berners-Lee 1999, P. 63.
- ↑ Berners-Lee 1999, p.62.
- ↑ a b c d Tim Berners-Lee : Foire aux questions – Pourquoi le //, #, etc ? 20 novembre 2007, récupéré le 22 décembre 2010 .