Spécifier une URL canonique si plusieurs renvoient le même contenu
Par Victor Brito, le vendredi 13 février 2009, à 12h00 - Catégorie Référencement - Lien permanent
Pour le tri dans le contenu double (le fameux duplicate content qui peut amener Google à sanctionner certains sites dans certaines conditions), Google propose une arme permettant de spécificier quelle est l'URL à indexer de préférence (autrement dit, l'URL canonique) : l'attribut rel="canonical", et s'en explique sur son blog pour webmasters.
Pour comprendre l'utilité d'indiquer à Google une URL canonique, il suffit de songer aux sites dont les URLs comportent des paramètres en nombre variable, parmi lesquels des paramètres permettant d'établir le suivi d'un client potentiel (cas d'une opération de parrainage ou de campagne publicitaire soucieuse du retour sur investissement) ou de fournir un identifiant de session (cas pratique lorsque l'utilisateur ne peut ou ne veut accepter des cookies de session).
Ces derniers types de paramètres sont d'autant plus problématiques que, lorsqu'on les supprime, on obtient une URL, certes différente, mais donnant accès au même contenu. Autrement dit :
http://exemple.fr/produit.php?item=produit&trackingid=identifiant de suivi&sessionid=identifiant de session,http://exemple.fr/produit.php?item=produit&trackingid=identifiant de suivi,http://exemple.fr/produit.php?item=produit&sessionid=identifiant de sessionethttp://exemple.fr/produit.php?item=produit
sont quatre URLs susceptibles d'accéder à la même page, donc au même contenu, mais sont le plus souvent traitées par les moteurs de recherche comme quatre URLs distinctes, c'est-à-dire quatre URLs censées accéder à des pages différentes. Par conséquent, les moteurs de recherche considéreront que le contenu est multiplié par autant d'URLs qui y accèdent. Dans certains cas, notamment quand les URLs proviennent de noms de domaines différents, la duplication de contenu peut amener le moteur de recherche (en particulier, Google) à sanctionner le site recourant à cette pratique.
À défaut d'optimiser le site pour supprimer les URLs superflues, ou du moins les paramètres posant problème (comme celui de l'identifiant de session), il est possible d'indiquer aux moteurs de recherche quelles sont les URLs à prendre en compte (et donc à indexer). Le protocole Sitemap permet déjà d'y remédier. Mais, Google propose une autre solution, qui consiste à insérer un élément link contenant un attribut rel, de valeur canonical, et l'attribut href, dont la valeur est l'URL canonique pour la page en question. Ce qui donne, par exemple, le code suivant :
<link rel="canonical" href="http://exemple.fr/produit.php?item=produit" />
L'URL canonique peut être aussi bien absolue que relative ; de plus, l'URL peut aussi être une redirection. En revanche, il est recommandé de s'assurer que l'URL canonique ne génère pas une erreur 404 et, surtout, l'URL canonique ne peut pas concerner un nom de domaine différent (par exemple, une URL du domaine exemple-produits.fr alors que le site comportant l'URL canonique relève du domaine exemple.fr) ; toutefois, les autres sous-domaines du site en question sont acceptés.
À noter que cette technique peut être adoptée par n'importe quel autre moteur de recherche.

