2009-09-21 6 views
7

Y a-t-il une différence entre ces URL en ce qui concerne les barres obliques à la fin de l'URL?Pourquoi auriez-vous besoin d'une barre oblique à la fin d'une URL?

https://drchrono.com/about_us 
https://drchrono.com/about_us/ 

Do frameworks Web et les serveurs Web (par exemple Apache, Nginx, Django) gérer ces demandes différemment?

+3

Petite note: ce sont des barres obliques et non des barres obliques inverses. –

Répondre

5

Dans Django, les URL sans barres obliques sont automatiquement précédées d'une barre oblique. C'est une préférence des développeurs de Django et non une règle codée en dur du web (je pense que c'est un paramètre dans Django).

+3

APPEND_SLASH = Vrai – zalew

3

/est le caractère de séparation.

De la RFC

Certains schémas d'URL (comme le ftp, http, et les systèmes de fichiers) contiennent noms qui peuvent être considérés comme hiérarchique; les composants de la hiérarchie sont séparés par "/".

Avoir un/à la fin indique qu'il pourrait y avoir plus de choses dans l'URL.

1

Ils sont traités comme des demandes différentes, bien qu'ils puissent correspondre à la même ressource/gestionnaire/routine à la fin et être traités de la même manière. Comme celui avec/est supposé être quelque chose de similaire à un répertoire, tous les liens relatifs seront à l'intérieur du/ie précédent/cible/quelque chose ... tandis que celui sans les liens correspondants sera au même niveau précédent/quelque chose.

24

Le navigateur les traitera différemment en ce qui concerne les URL relatives. Une page à:

http://server/path 

avec un lien relatif comme:

<a href='other'> 

résoudra ce lien vers:

http://server/other 

remplacement path avec other. Alors que si l'URL de départ était:

http://server/path/ 

alors le lien résolu serait:

http://server/path/other 

Si path est un répertoire plutôt qu'un fichier, la plupart des serveurs Web redirigera automatiquement:

http://server/path 

à:

http://server/path/ 

parce que c'est presque certainement ce que vous vouliez dire.

+2

en raison de cette redirection automatique, si vous écrivez vos liens avec la barre oblique finale, vous obtiendrez une accélération minimale mais sensible de vos chargements de page. IIRC, les docs Apache le recommandent. – rmeador

1

Juste une note de côté que les moteurs de recherche les considèrent comme 2 pages différentes. Ainsi, blesser votre seo.

Questions connexes