Format d'une URL


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

Format d'une URL

Message le Mer Mar 03, 2010 17:23

Bonjour,

Est-ce vraiment conforme aux recommandations de mettre des majuscules dans les URLs HTTP (à la Wikipedia par exemple) ?

Je ne parle même pas des accents qui sont clairement une dérive.

D'après la RFC 1738 http://www.ietf.org/rfc/rfc1738.txt - 2.1. The main parts of URLs, j'ai lu ça :
Scheme names consist of a sequence of characters. The lower case
letters "a"--"z", digits, and the characters plus ("+"), period
("."), and hyphen ("-") are allowed. For resiliency, programs
interpreting URLs should treat upper case letters as equivalent to
lower case in scheme names (e.g., allow "HTTP" as well as "http").


Est-ce la bonne RFC ?
Si oui The lower case letters "a"--"z" ne liste pas les majuscules.
Il n'y a même pas l'underscore ?

Merci


Julia41
WRInaute passionné
WRInaute passionné
 
Messages: 1765
Inscription: 31 Aoû 2007

Re: Format d'une URL

Message le Mer Mar 03, 2010 17:34

C'est pas conforme mais les programmes (navigateur, robots) doivent être capable de les traiter, donc normalement pas gênant.

Edit: en fait je dis de la merde, un dossier /Admin (sur le serveur) n'est pas accessible par /admin, donc c'est bien interprété en majuscule... A vérifier (mais les majuscules dans l'URL c'est le mal quand même)

Rod la Kox
WRInaute accro
WRInaute accro
 
Messages: 3253
Inscription: 24 Juin 2008

Re: Format d'une URL

Message le Mer Mar 03, 2010 20:06

Julia41 a écrit:C'est pas conforme

?
On peu mettre des accents dans les ndd... qu'est-ce qui n'est pas conforme.

Tu mets ce que tu veux dans tes URL.


Julia41
WRInaute passionné
WRInaute passionné
 
Messages: 1765
Inscription: 31 Aoû 2007

Re: Format d'une URL

Message le Mer Mar 03, 2010 23:23

Rod la Kox a écrit:On peu mettre des accents dans les ndd... qu'est-ce qui n'est pas conforme.

Tu mets ce que tu veux dans tes URL.


Non, les ndd avec accent sont simplement traités différement avec des x-nn--

Code: Tout sélectionner
curl -vv http://www.infogérance.eu
* Input domain encoded as `ISO-8859-1'
* About to connect() to www.xn--infogrance-f7a.eu port 80 (#0)


Code: Tout sélectionner
whois infogérance.eu
Domain: infogérance
IDNA Domain:    xn--infogrance-f7a


edit: Et j'ai dit que je disais de la merde en disant que c'était pas conforme hein ;)

jcaron
WRInaute accro
WRInaute accro
 
Messages: 2685
Inscription: 13 Fév 2004

Re: Format d'une URL

Message le Jeu Mar 04, 2010 2:46

@dorian53: Tu n'as pas lu la bonne partie de la RFC. Ce que tu cites, c'est ce qui s'applique au "scheme", i.e. le premier mot au début de l'URL (avant le : ou ://) genre http, ftp, mailto, etc.

Pour le reste, tout ou presque est autorisé, voir la syntaxe détaillée à la fin. Le chemin peut être composé de a-z, A-Z, 0-9, $-_.+!*'(),;:@&=/ et les séquences %xx. Les seuls caractères qui ne sont pas autorisés tels quels sont donc:
- les caractères de contrôle (<=31), DEL (127) et les caractères >7 bits.
- l'espace (délimiteur dans la requête HTTP)
- "<> (probablement pour éviter les problèmes en HTML)
- # (délimiteur de fragment)
- ? (délimiteur de query string)
- % tout seul
- [\]^`{|}~ (je ne sais pas trop pourquoi, et je pense qu'ils sont en fait tolérés)

Tous ces caractères (y compris les caractères accentués, donc) peuvent évidemment être insérés sous forme de %xx. C'est d'ailleurs le cas des accents dans les URLs de Wikipedia (regarde le source), ce sont juste les browsers modernes qui décodent les %xx et les affichent décodés, l'URL dans le code HTML et dans les requêtes HTTP est bien sous forme %xx.

Jacques.


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Re: Format d'une URL

Message le Jeu Mar 04, 2010 9:43

intéressant, merci


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

Re: Format d'une URL

Message le Jeu Mar 04, 2010 12:02

jcaron a écrit:@dorian53: Tu n'as pas lu la bonne partie de la RFC. Ce que tu cites, c'est ce qui s'applique au "scheme", i.e. le premier mot au début de l'URL (avant le : ou ://) genre http, ftp, mailto, etc.

Ok merci Jacques. La bonne section était celle-ci.

RFC 1738 Uniform Resource Locators (URL) December 1994


alpha = lowalpha | hialpha
digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" |
"8" | "9"
safe = "$" | "-" | "_" | "." | "+"
extra = "!" | "*" | "'" | "(" | ")" | ","
national = "{" | "}" | "|" | "\" | "^" | "~" | "[" | "]" | "`"
punctuation = "<" | ">" | "#" | "%" | <">


reserved = ";" | "/" | "?" | ":" | "@" | "&" | "="
hex = digit | "A" | "B" | "C" | "D" | "E" | "F" |
"a" | "b" | "c" | "d" | "e" | "f"
escape = "%" hex hex

unreserved = alpha | digit | safe | extra
uchar = unreserved | escape
xchar = unreserved | reserved | escape
digits = 1*digit


Je m'étonne que tous ces caractères soient autorisés, d'où ma question.
Pourquoi sont-ils si rares dans les URLs (accents, maj, etc.) ?
Par exemple, pourquoi les supprime-t-on souvent lors des rewrites ?

Rod la Kox
WRInaute accro
WRInaute accro
 
Messages: 3253
Inscription: 24 Juin 2008

Re: Format d'une URL

Message le Jeu Mar 04, 2010 12:32

Julia41 a écrit:
Rod la Kox a écrit:On peu mettre des accents dans les ndd... qu'est-ce qui n'est pas conforme.

Tu mets ce que tu veux dans tes URL.


Non, les ndd avec accent sont simplement traités différement avec des x-nn--


Gni ?
On s'en fout de comment s'est interprété. Tu peux tout mettre dans une URL.

jcaron
WRInaute accro
WRInaute accro
 
Messages: 2685
Inscription: 13 Fév 2004

Re: Format d'une URL

Message le Jeu Mar 04, 2010 12:55

dorian53 a écrit:Je m'étonne que tous ces caractères soient autorisés, d'où ma question.
Pourquoi sont-ils si rares dans les URLs (accents, maj, etc.) ?
Par exemple, pourquoi les supprime-t-on souvent lors des rewrites ?


Les majuscules ne sont pas si rares, et il n'y a pas d'intérêt particulier à les supprimer. Il ne faut pas oublier que sur une URL d'un fichier "normal" (fichier statique servi directement, sans recours à du rewriting ou un script), suivant l'OS du serveur, les majuscules vont être significatives (Unix) ou pas (Windows). Pour éviter les soucis on conseille de n'utiliser que des minuscules, mais rien n'empêche d'utiliser des majuscules.

Pour les accents, vu qu'ils sont encodés, et qu'il y a forcément un doute sur le charset utilisé (ISO-8859-1, UTF-8...), ce n'est pas forcément si évident que ça qu'ils soient compris "comme il faut" par tout le monde (i.e. si on part du principe que les mots de l'URL sont interprétés par les moteurs, ce que Google dément faire, mais ce que d'autres comme Bing semblent faire si j'ai bien tout suivi).

Ceci dit, si on prend l'exemple de Wikipedia, on voit que les URLs avec des accents sont au minimum décodées à l'affichage par Google, donc pas de problème de ce côté-là. Ca ne veut pas dire qu'il n'y a pas plein d'outils écrits un peu à la va-vite qui vont se vautrer lamentablement...

Jacques.

jcaron
WRInaute accro
WRInaute accro
 
Messages: 2685
Inscription: 13 Fév 2004

Re: Format d'une URL

Message le Jeu Mar 04, 2010 12:58

Rod la Kox a écrit:On s'en fout de comment s'est interprété. Tu peux tout mettre dans une URL.


Ben non. Comme indiqué plus haut, il n'y a qu'un nombre limité de caractères qui sont autorisés, le reste doit être encodé (de façon différente suivant le "morceau" de l'URL dont il s'agit: punycode pour les domaines, %xx pour le reste.

Pour le reste, un bon UA se chargera de convertir, mais si tu veux éviter les soucis, le mieux est que les URLs aient dès le départ le bon format.

Jacques.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google goo.gl

  • Liste des backlinks
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.
  • Transformer des textes non cliquables en liens
    Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité