J'utilise des URL tout le temps en les tapant avec ou sans "//" après "http:", mais que signifie vraiment "//"?
Réponses
Trop de publicités?Slashdot avait un article à ce sujet il y a quelques jours. Tim Berners-Lee indique qu'il n'y avait pas de raison particulière pour la présence des deux barres obliques (voir aussi http://bits.blogs.nytimes.com/2009/10/12/the-webs-inventor-regrets-one-small-thing/).
Personnellement, j'aime l'idée de ce style d'URL :
http:/com/example/www/blah1/blah.html
Il n'y a pas de "nom d'hôte" explicite dans une telle URL. Si votre ferme de serveurs "www.example.com" est surchargée par les demandes concernant la ressource "/blah1", il vous suffit de créer un enregistrement DNS "blah1.www.example.com" et de le pointer vers une autre ferme de serveurs web hébergeant la hiérarchie de ressources "/com/example/blah1".
Il y a sans aucun doute des implications DNS avec une telle idée, et cela ne se produira sûrement pas maintenant (pas plus que soudainement avoir des horloges qui tournent dans le sens inverse ne deviendrait à la mode), mais je pense que cela aurait bien fonctionné.
Édition : Les RR SRV pour les sites web auraient été vraiment intéressants aussi. Diable - les RR SRV pour quoi que ce soit seraient bien.
Il existe une réponse à cela dans la FAQ de Tim Berners-Lee (lien trouvé dans la discussion slashdot mentionnée dans la réponse de @Evan Anderson). Essentiellement, il a copié la syntaxe du nom de fichier à partir d' Apollo Domain, où le fait de commencer un chemin avec un double slash suivi du nom d'un ordinateur était utilisé pour accéder de manière transparente aux fichiers d'autres ordinateurs (un seul slash est toujours le répertoire racine). Il l'a simplement précédé avec le protocole, dans ce cas http
.
Ce cas spécial existe toujours dans les normes Unix, où deux slashes au début d'un nom de fichier peuvent être interprétés d'une manière définie par l'implémentation (trois ou plus de slashes sont équivalents à un seul). Et la même convention est largement utilisée dans Windows, mais avec des barres obliques inversées au lieu de barres obliques normales (on l'appelle un chemin UNC là-bas).
Tim Berners-Lee admet que cela était destiné à séparer le protocole de l'adresse, mais s'est avéré être inutile.
http://www.theinquirer.net/inquirer/news/1558680/berners-lee-regrets-double-slash
Consultez RFC 1738, section 3.1 :
Alors que la syntaxe pour le reste de l'URL peut varier en fonction du schéma particulier sélectionné, les schémas d'URL qui impliquent l'utilisation directe d'un protocole basé sur IP vers un hôte spécifié sur Internet utilisent une syntaxe commune pour les données spécifiques au schéma :
//:@:/
Certaines ou toutes les parties
":@"
,":"
,":"
, et"/"
peuvent être exclues. Les données spécifiques au schéma commencent par un double slash"//"
pour indiquer qu'elles sont conformes à la syntaxe commune des schémas Internet.
- Réponses précédentes
- Plus de réponses