Bonnes pratiques concernant la structure des URL pour la recherche Google

Pour vous assurer que la recherche Google peut explorer votre site efficacement, utilisez une structure d'URL explorable qui répond aux exigences suivantes. Si vos URL ne répondent pas aux critères suivants, la recherche Google explorera probablement votre site de manière inefficace, ce qui peut inclure des taux d'exploration extrêmement élevés ou nuls.

Exigences pour une structure d'URL explorable

Respectez la norme IETF STD 66

La recherche Google prend en charge les URL conformes à la norme IETF 66. Les caractères définis par la norme comme étant réservés doivent être encodés en pourcent.

N'utilisez pas de fragments d'URL pour modifier le contenu

N'utilisez pas de fragments pour modifier le contenu d'une page, car la recherche Google n'accepte généralement pas les fragments d'URL. Voici un exemple de fragment d'URL:

https://example.com/#/potatoes

Si vous utilisez JavaScript pour modifier le contenu, utilisez l'API History à la place.

Utilisez un encodage courant pour les paramètres d'URL

Lorsque vous spécifiez des paramètres d'URL, utilisez l'encodage courant suivant : un signe égal (=) pour séparer les paires clé-valeur, et ajoutez des paramètres supplémentaires avec une esperluette (&). Pour lister plusieurs valeurs pour la même clé dans une paire clé-valeur, vous pouvez utiliser n'importe quel caractère qui n'est pas en conflit avec IETF STD 66, comme une virgule (,).

Approche conseillée Approche déconseillée
Utiliser un signe égal (=) pour séparer les paires clé-valeur et une esperluette (&) pour ajouter des paramètres supplémentaires :
https://example.com/category?category=dresses&sort=low-to-high&sid=789
Utiliser un signe deux-points (:) pour séparer les paires clé-valeur et des crochets ([ ]) pour ajouter des paramètres supplémentaires :
https://example.com/category?[category:dresses][sort:price-low-to-high][sid:789]
Utiliser une virgule (,) pour lister plusieurs valeurs pour la même clé, un signe égal (=) pour séparer les paires clé-valeur et une esperluette (&) pour ajouter des paramètres supplémentaires :
https://example.com/category?category=dresses&color=purple,pink,salmon&sort=low-to-high&sid=789
Utiliser une seule virgule (,) pour séparer les paires clé-valeur et des virgules doubles (,,) pour ajouter des paramètres supplémentaires :
https://example.com/category?category,dresses,,sort,lowtohigh,,sid,789

Simplifiez la compréhension de votre structure d'URL

Pour aider la recherche Google (et vos utilisateurs) à mieux comprendre votre site, nous vous recommandons de créer une structure d'URL simple en appliquant les bonnes pratiques suivantes, dans la mesure du possible.

Bonnes pratiques

Utilisez des URL descriptives

Remplacez, si possible, les ID trop longs par des termes compréhensibles.

Approche conseillée (mots simples et descriptifs) Approche déconseillée (ID longs et illisibles)
https://example.com/wiki/Aviation
https://example.com/index.php?topic=42&area=3a5ebc944f41daa6f849f730f1

Utilisez la langue de votre audience

Utilisez des mots dans la langue de votre audience dans l'URL (et, le cas échéant, des mots translittérés). Par exemple, si votre audience effectue des recherches en allemand, utilisez des mots allemands dans l'URL :

https://example.com/lebensmittel/pfefferminz

Si elle effectue des recherches en japonais, utilisez des mots japonais dans l'URL :

https://example.com/ペパーミント

Utilisez l'encodage UTF-8 si nécessaire

Lorsque vous créez des liens vers des pages de votre site, utilisez l'encodage UTF-8 dans les attributs href de vos liens si nécessaire. Les caractères ASCII non réservés peuvent être laissés sous forme non encodée. De plus, les caractères de la plage non ASCII doivent être encodés en UTF-8. Exemple :

Approche conseillée (encodage UTF-8) Approche déconseillée (caractères non ASCII)
https://example.com/%D9%86%D8%B9%D9%86%D8%A7%D8%B9/%D8%A8%D9%82%D8%A7%D9%84%D8%A9
https://example.com/نعناع
https://example.com/%E6%9D%82%E8%B4%A7/%E8%96%84%E8%8D%B7
https://example.com/杂货/薄荷
https://example.com/gem%C3%BCse
https://example.com/gemüse
https://example.com/%F0%9F%A6%99%E2%9C%A8
https://example.com/🦙✨

Utilisez des traits d'union pour séparer les mots

Dans la mesure du possible, nous vous recommandons de séparer les mots dans vos URL. Plus précisément, nous vous recommandons d'utiliser des traits d'union (-) plutôt que des traits de soulignement (_) pour séparer les mots dans vos URL. Cela aide en effet les internautes et les moteurs de recherche à mieux identifier les concepts dans l'URL. Pour des raisons historiques, nous vous déconseillons d'utiliser des traits de soulignement, car ce style est déjà couramment utilisé pour désigner des concepts qui doivent être conservés ensemble, par exemple par différents langages de programmation pour nommer des fonctions (comme format_date).

Approche conseillée Approche déconseillée

Utilisez des tirets (-) pour séparer les mots:

https://example.com/summer-clothing/filter?color-profile=dark-grey

Utilisez des traits de soulignement (_) pour séparer les mots:

https://example.com/summer_clothing/filter?color_profile=dark_grey

Joindre des mots dans l'URL:

https://example.com/greendress

Utilisez le moins de paramètres possible

Dans la mesure du possible, réduisez la longueur de vos URL en supprimant les paramètres superflus (c'est-à-dire les paramètres qui ne modifient pas le contenu).

N'oubliez pas que les URL sont sensibles à la casse

Comme tout autre client HTTP respectant la norme IETF 66, la gestion des URL par la recherche Google est sensible à la casse (par exemple, Google traite /APPLE et /apple comme des URL distinctes avec leur propre contenu). Si les majuscules et minuscules d'une URL sont traitées de la même manière par votre serveur Web, convertissez tout le texte dans la même casse. Cela aidera Google à déterminer plus facilement que les URL font référence à la même page.

Pour les sites multirégionaux

Si votre site concerne plusieurs régions, envisagez d'utiliser une structure d'URL facilitant le ciblage géographique. Pour découvrir d'autres exemples de structures d'URL, consultez la page Utiliser des URL spécifiques aux paramètres régionaux.

Approche conseillée (utilisation d'un domaine spécifique à un pays) :

https://example.de

Approche déconseillée (utilisation d'un sous-répertoire spécifique à un pays avec un domaine de premier niveau générique) :

https://example.com/de/

Éviter les problèmes courants liés aux URL

Les URL trop complexes, notamment celles qui contiennent de nombreux paramètres, peuvent gêner l'exploration en créant inutilement un nombre élevé d'URL qui renvoient vers des contenus identiques ou similaires sur votre site. Dans ce cas, il est possible que Googlebot utilise beaucoup plus de bande passante que nécessaire ou ne parvienne pas à indexer tout le contenu de votre site.

La présence d'un nombre trop élevé d'URL peut provenir de divers facteurs, notamment :

Problèmes courants

Filtrage supplémentaire d'un ensemble d'éléments

De nombreux sites offrent la possibilité d'afficher un même ensemble de données ou des résultats de recherche de différentes manières. Ces sites proposent généralement aux internautes de filtrer les données selon des critères définis (afficher les hôtels en bord de mer, par exemple). Lorsque l'application de plusieurs filtres est possible (par exemple, hôtels en bord de mer et disposant d'une salle de sport), le nombre d'URL (affichages des données) croît significativement pour un même site. Or, la présence d'un nombre important de listes similaires entraîne des explorations redondantes, car une petite partie de ces listes suffirait à Googlebot pour atteindre tous les sites des hôtels proposés. Exemples :

  • Hôtels à "petit prix" :
    https://example.com/hotel-search-results.jsp?Ne=292&N=461
  • Hôtels à "petit prix" en bord de mer :
    https://example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240
  • Hôtels à "petit prix", en bord de mer et équipés d'un centre de remise en forme :
    https://example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240+4294967270

Paramètres non pertinents

Les paramètres d'URL non pertinents peuvent entraîner la création d'un grand nombre d'URL, par exemple:

  • Paramètres de référence :
    https://example.com/search/noheaders?click=6EE2BF1AF6A3D705D5561B7C3564D9C2&clickPage=OPD+Product+Page&cat=79
    https://example.com/discuss/showthread.php?referrerid=249406&threadid=535913
    https://example.com/products/products.asp?N=200063&Ne=500955&ref=foo%2Cbar&Cn=Accessories
  • Paramètres de tri Shopping :
    https://example.com/results?search_type=search_videos&search_query=tpb&search_sort=relevance&search_category=25
  • Identifiants de session :
    https://example.com/search/noheaders?sessionid=6EE2BF1AF6A3D705D5561B7C3564D9C2

Envisagez d'utiliser un fichier robots.txt pour bloquer l'accès de Googlebot à ces URL problématiques.

Problèmes de calendrier

Un calendrier généré de manière dynamique peut créer des liens vers des dates ultérieures et antérieures sans appliquer de limitation sur les dates de début et de fin. Exemple :

https://example.com/calendar.php?d=13&m=8&y=2011

Si votre site dispose d'un calendrier infini, ajoutez l'attribut nofollow aux liens permettant d'accéder aux futures pages de calendrier créées de façon dynamique.

Placer un lien associé au parent sur la mauvaise page peut créer des espaces infinis si votre serveur ne répond pas avec le code d'état HTTP approprié pour les pages inexistantes. Par exemple, un lien associé au parent tel que <a href="../../category/stuff">...</a> sur https://example.com/category/community/070413/html/FAQ.htm peut générer des URL fictives telles que https://example.com/category/community/category/stuff. Pour résoudre ce problème, utilisez des URL associées à la racine dans vos liens (et non associées au parent).

Résoudre les problèmes de structure d'URL liés à l'exploration

Si vous constatez que la recherche Google explore ces URL problématiques, nous vous recommandons les solutions suivantes :

  • Pensez à utiliser un fichier robots.txt pour bloquer l'accès de Googlebot aux URL problématiques. De manière générale, nous vous recommandons de bloquer les URL dynamiques, telles que les URL qui génèrent des résultats de recherche ou créent des espaces infinis, comme les calendriers, ainsi que les fonctions de tri et de filtrage.
  • Si votre site comporte une navigation à facettes, découvrez comment gérer l'exploration de ces URL de navigation à facettes.