web-dev-qa-db-fra.com

Est-ce correct d'avoir un URI insensible à la casse?

Si j'ai une URL du type /writes/about/star-wars et qu'elle soit également accessible aux utilisateurs par /wRitEs/ABOUT/star-WARS, cette page est-elle considérée comme une autre? Une page est-elle autorisée à combiner des lettres majuscules/minuscules?

Je sais que sur Linux, vous pouvez avoir my.file et My.FILE dans le même dossier. Je me demandais donc si les pages Web fonctionnaient de la même manière. Si tel est le cas, j’ai l’intention de cesser de prendre en charge les deux chemins et d’autoriser le vrai.

3
Xeoncross

Les noms de domaine sont insensibles à la casse. WEBAPPS.STACKEXCHANGE.COM est identique à webapps.stackexchange.com

Tout ce qui suit la barre oblique appartient au serveur Web. En fonction du logiciel de serveur Web utilisé ou des paramètres utilisés par le serveur, cette partie de l'URL peut être sensible à la casse ou insensible à la casse.

Comme ChrisF l'a montré, le serveur webapps.stackexchange.com ne tient pas compte de la casse utilisée. Mais ce n'est pas toujours le cas. Par exemple, google.com/services est différent de google.com/SERVICES . Ou, à titre d'exemple, dans une URL YouTube, l'ID de la vidéo (la partie v =) est sensible à la casse.

Comme EricSchaefer l'a fait remarquer, si vous décidez de permettre aux URL insensibles à la casse de renvoyer la même page, les moteurs de recherche peuvent ou non reconnaître qu'ils sont sur la même page. Un moteur de recherche peut remarquer que les URL renvoient la même page et choisir une version de l’URL à afficher dans les résultats de la recherche. Il se peut également que la page ne soit pas la même, ce qui entraînerait un classement inférieur de toutes les versions de l'URL dans les résultats de recherche.

Si vous décidez d'autoriser les URL insensibles à la casse à renvoyer la même page, vous pouvez choisir une version de l'URL comme étant l'URL "officielle" et faire en sorte que toutes les autres variantes de la cas y soient redirigées à l'aide d'un en-tête de réponse 301. Vous pouvez également spécifier l’URL "officielle" à l’aide de la balise balise méta canonique . Ainsi, les utilisateurs peuvent saisir l'URL quel que soit le cas, mais les moteurs de recherche connaîtront l'URL officielle à utiliser pour les résultats de recherche et le classement.

11
Bavi_H

Généralement, il n’est pas judicieux (en matière de référencement) d’avoir une ressource accessible par plusieurs URL. Les moteurs de recherche considèrent/foo et/Foo comme différentes URL.

Oui, une page est autorisée à avoir n'importe quelle combinaison de lettres majuscules/minuscules.
Mais non, ne le fais pas.

2
EricSchaefer

Les URL sont sensibles à la casse, mais les domaines ne le sont pas. Ce n’est pas une bonne pratique de les rendre sensibles à la casse, sauf si vous utilisez une redirection d’URL en base64, comme bit.ly et une URL minuscule.

Si votre site se trouve sur un serveur Windows exécutant IIS, il est probable qu'il ne soit pas sensible à la casse pour commencer. IIS ne peut pas gérer les cas sensibles en dehors de la boîte.

La bonne pratique consiste donc à utiliser toutes les URL minuscules.

1
Frank

La meilleure réponse à votre question devrait vraiment couvrir deux facettes:

First: Indique si le serveur Web doit imposer une correspondance dans le cas.

  • Lorsque posé comme ça, cela semble évident - non. Vous souhaitez que l'utilisateur obtienne un contenu sur le contenu, quel que soit le cas demandé.
  • Dire non, ne pas imposer de cas, signifierait permettre l'insensibilité à la casse.

Deuxième: Etant donné l'insensibilité à la casse, comment devriez-vous utiliser la casse dans vos URI?

La réponse à la première facette de la question, IMO, est assez évidente et a déjà été discutée. Vous souhaitez servir du contenu, pas des pages d'erreur, vous ne devez donc pas configurer votre serveur Web pour appliquer un cas de correspondance.

Ensuite, les considérations importantes pour la deuxième facette de ce sujet nécessiteraient un examen des pratiques de référencement. La réponse la plus simple consisterait à dire "SOYEZ CONSISTANT".

Cependant, il est possible que vos pages soient indexées par des règles différentes. CamelCase peut figurer sur une page ou un répertoire, sur l’ensemble des minuscules ou sur la capitalisation initiale. C'est ici que vous devez concentrer votre énergie ...

Tout d’abord, choisissez une méthodologie.

Personnellement, j'aime que tout soit en minuscule. Cela me dérange parfois lorsque je vois des choses comme des codes d’État (c'est-à-dire NY, FL, TX) en minuscule, mais cela demande plus d'effort de la part de règles - cela conduit à la réécriture d'URL - en fonction de la spécificité de les informations transmises par cette partie de l'URI.

Si vous deviez adopter la méthode consistant à tout avoir en minuscule, vous pouvez utiliser un programme de réécriture d'URL pour réécrire les URL contenant des lettres majuscules en minuscules. Il y a une distinction très importante à faire ici:

Réécrire simplement l'URI mélangé (ou l'intégralité de la lettre UPPER) en tant qu'URI en minuscule ne fournit pas la meilleure solution possible. Ce que vous devriez faire, c'est en réalité 301-Rediriger l'URI vers le style approprié, pas simplement le réécrire.

La redirection 301 devrait, en théorie, réduire le pourcentage de demandes d'URI qui sont entrées "de manière incorrecte" car la requête 301 indique au visiteur (surtout, les SE) de "mettre à jour vos enregistrements" pour ainsi dire.

Les gens peuvent débattre de toutes les majuscules ou de toutes les minuscules. En bref, je suggérerais que toutes les minuscules sont un peu plus faciles à regarder et à déchiffrer, offrant peut-être un peu plus de lisibilité que toutes les majuscules. La raison en est que les lettres minuscules ont des hauteurs variables, certaines lettres descendent en dessous de la ligne de base (telle que "minuscule" g), certaines dépassent la hauteur x (telle que "b" minuscule) ou correspondent à la hauteur x ( tels que 'o'). En revanche, tous les CAPS ont tendance à décrire de manière plus homogène l’espace qu’ils occupent - moins de variation signifie qu’il faut un peu plus d’efforts pour interpréter, en le disant à la légère; vous ne pouvez pas dire que la différence d'effort est remarquée.

Néanmoins, malgré tout ce qui a été dit, ma préférence est d'utiliser tous les URI en minuscules et d'utiliser un graveur d'URL pour réécrire (et rediriger) les demandes non conformes.

0
Chris Adragna