Interrogé sur Bluesky par Vanessa Fox, ancienne de Google et spécialiste du SEO, John Mueller a détaillé le traitement de certains caractères dans les URL. La question portait notamment sur les différences entre les adresses utilisées dans les liens et celles déclarées comme canoniques.
Les crochets bruts et encodés ne sont pas équivalents
L’échange prend pour exemple ces deux adresses.
https://example.com/category?filter[]=123
https://example.com/category?filter%5B%5D=123
Dans la seconde, %5B représente le crochet ouvrant et %5D le crochet fermant. Selon la RFC 3986 citée par John Mueller, les crochets sont des caractères réservés. Leur remplacement par une forme encodée ne constitue donc pas une normalisation qui garantit l’équivalence des adresses.
La norme n’autorise pas non plus les crochets bruts dans la chaîne de paramètres de cet exemple. Elle leur réserve un usage particulier pour encadrer une adresse IP littérale dans la partie hôte.
En revanche, la casse du code hexadécimal ne change pas cet encodage des caractères. %5B et %5b sont équivalents.
Google peut explorer les deux versions et retenir une seule URL
Un serveur peut renvoyer le même contenu pour les deux adresses. John Mueller explique que Google peut alors explorer les deux versions d’URL, constater qu’elles présentent un contenu identique, puis les regrouper et en sélectionner une.
Sa recommandation consiste à choisir une seule écriture cohérente dans les liens, les balises canoniques, les sitemaps et les données structurées.
Il ajoute que les espaces, le signe + et %20 demandent aussi une attention particulière. Leur interprétation dépend notamment de leur position dans le chemin de l’URL ou dans sa chaîne de paramètres.




