Bonnes pratiques concernant la structure des URL pour Google
Google prend en charge les URL conforme à la norme RFC 3986. Les caractères définis par la norme comme étant réservés doivent être encodés en pourcent. 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.
Remplacez, si possible, les ID trop longs par des termes compréhensibles.
Approche recommandée : mots simples et descriptifs dans l'URL :
https://en.wikipedia.org/wiki/Aviation
Approche recommandée : mots localisés dans l'URL, le cas échéant.
https://example.com/lebensmittel/pfefferminz
Approche recommandée : utilisation de l'encodage UTF-8 si nécessaire. L'exemple suivant utilise l'encodage UTF-8 pour les caractères arabes dans l'URL :
https://example.com/%D9%86%D8%B9%D9%86%D8%A7%D8%B9/%D8%A8%D9%82%D8%A7%D9%84%D8%A9
L'exemple suivant utilise l'encodage UTF-8 pour les caractères chinois dans l'URL :
https://example.com/%E6%9D%82%E8%B4%A7/%E8%96%84%E8%8D%B7
L'exemple suivant utilise l'encodage UTF-8 pour le tréma dans l'URL :
https://example.com/gem%C3%BCse
L'exemple suivant utilise l'encodage UTF-8 pour les emoji dans l'URL :
https://example.com/%F0%9F%A6%99%E2%9C%A8
Approche déconseillée : utilisation des caractères non ASCII dans l'URL :
https://example.com/نعناع
https://example.com/杂货/薄荷
https://example.com/gemüse
https://example.com/🦙✨
Approche déconseillée : ID longs et illisibles dans l'URL :
https://example.com/index.php?id_sezione=360&sid=3a5ebc944f41daa6f849f730f1
N'utilisez pas de fragments pour modifier le contenu d'une page, car Google n'accepte généralement pas les fragments d'URL. Si vous utilisez JavaScript pour modifier le contenu, utilisez l'API History à la place.
Approche déconseillée : fragments d'URL :
https://example.com/#/potatoes
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 recommandée : domaine spécifique par pays :
https://example.de
Approche recommandée : sous-répertoire spécifique par pays avec un domaine de premier niveau générique :
https://example.com/de/
Pensez à utiliser des traits d'union pour séparer les mots dans vos URL. Cela aide en effet les internautes et les moteurs de recherche à identifier plus facilement les concepts dans l'URL. Nous vous recommandons d'utiliser des traits d'union (-
) plutôt que des traits de soulignement (_
) dans vos URL.
Approche recommandée : traits d'union (-
) :
https://example.com/summer-clothing/filter?color-profile=dark-grey
Approche déconseillée : traits de soulignement (_
) :
https://example.com/summer_clothing/filter?color_profile=dark_grey
Approche déconseillée : succession de mots les uns après les autres, sans caractère de séparation, dans l'URL.
https://example.com/greendress
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 recommandé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
Approche recommandée : 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
Approche déconseillée : 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]
Approche déconseillée : 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
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. En voici quelques-uns :
- 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'un centre de remise en forme), 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
- Hôtels à "petit prix" :
- Création dynamique de documents. Ce procédé peut entraîner de légères modifications dues aux compteurs, aux horodatages ou aux publicités.
- Paramètres problématiques dans l'URL. Les ID de session, par exemple, peuvent générer une quantité considérable de doublons et augmenter le nombre d'URL.
-
Paramètres de tri. Certains grands sites de vente en ligne proposent à leurs utilisateurs diverses méthodes pour trier les produits, multipliant ainsi le nombre d'URL. Exemple :
https://example.com/results?search_type=search_videos&search_query=tpb&search_sort=relevance&search_category=25
- Paramètres d'URL inadaptés, comme les paramètres de référence. Exemple :
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.
- 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
- Liens associés non fonctionnels. Les liens associés non fonctionnels sont souvent à l'origine des espaces infinis. Ce problème survient généralement à cause de portions de chemin d'accès répétées. Exemple :
https://example.com/index.shtml/discuss/category/school/061121/html/interview/category/health/070223/html/category/business/070302/html/category/community/070413/html/FAQ.htm
Résoudre les problèmes liés aux URL
Pour éviter tout problème au niveau de la structure des URL, nous vous recommandons de suivre les conseils ci-après :
- Créez une structure d'URL simple. Organisez votre contenu de manière à donner aux URL une structure logique et facile à comprendre.
- Pensez à utiliser un fichier robots.txt pour bloquer l'accès de Googlebot à des 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. L'utilisation d'expressions régulières dans votre fichier robots.txt vous permet de bloquer facilement un nombre important d'URL.
- Évitez autant que possible d'insérer des identifiants de session dans les URL. Envisagez de les remplacer par des cookies.
- Si les lettres majuscules et minuscules d'une URL sont traitées de la même manière par le 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.
- Dans la mesure du possible, réduisez la longueur de vos URL en supprimant les paramètres superflus.
-
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. - Vérifiez que votre site ne comporte aucun lien associé non fonctionnel.