Les en-têtes HTTP ou comment maîtriser son indexation sur Google

écrit par Aymeric

googleBot HeaderVoici un petit article sur l’en-tête X-Robot-Tag et l’en-tête Link rel=canonical.
X-Robot-Tag pour simplifier, c’est l’équivalent de la meta <meta name= »robots »> (que vous pouvez placer dans le code source de vos pages HTML) mais dans les en-têtes HTTP, de même pour la Canonical.
Cette méthode présente de nombreux avantages, c’est une solution rapide et efficace à mettre en oeuvre: quelques lignes dans votre configuration d’Apache ou .htaccess.

Il est parfois complexe d’intervenir sur les éléments ou d’un site: les équipes de développement ne voulant pas nécessairement modifier le code du site (ex: CMS obsolète qui deviendrait instable), passer par la configuration du serveur Apache peut être un réel gain de temps et peut vous éviter de modifier manuellement un ensemble de champs dans le back-office de votre CMS, ce qui serait long et fastidieux.

Utilisation des en-têtes X-Robot-Tag et canonical

Plutôt que de vous faire de longs discours, voici quelques exemples d’utilisations des en-têtes HTTP et des variables d’environnement d’Apache, du concret quoi :-)

Désindexer des pages dupliquées en HTTPS

Un site accessible en HTTP et HTTPS peut générer du contenu dupliqué. Vous pouvez effectuer des redirections 301 mais la techniques qui suit permet de se débarrasser des junk pages, sans poids SEO qui risqueraient de fatiguer GoogleBot pour rien. Toutes les URL en HTTPS seront accompagnés de l’en-tête X-Robot-Tag.

# empêcher l’indexation d’un site en HTTPS
RewriteCond %{SERVER_PORT} 443
RewriteRule . - [E=headernoindex]
Header set X-Robots-Tag "noindex, nofollow" env=headernoindex

Ajouter une balise canonical pour les pages dupliquées en HTTPS

Si vous êtes frileux avec la désindexation et que vous souhaitez utiliser la balise canonical de Google pour lui indiquer la page principale, sans perdre le linkjuice potentiel qu’auraient ces pages, vous pouvez utiliser l’entête Link rel=canonical reconnue par Google (mais pas par Bing, ni Yahoo à priori…).

#ajouter une Canonical pour les URL en HTTPS
RewriteCond %{SERVER_PORT} 443
RewriteRule (.*) - [E=CANONICAL:$1]
Header set Link '<http://%{HTTP_HOST}e%{REQUEST_URI}e>; rel="canonical"' env=CANONICAL

Pagination: ne pas indexer mais laisser Googlebot crawler

Afin de limiter l’indexation de la pagination qui risque de générer du contenu dupliqué (avec la première page d’une catégorie) et de permettre le crawl et l’indexation de l’ensemble des produits/pages accessibles via la pagination, voilà comment renvoyer un « noindex,follow » dans les en-tête pour les URL qui auraient le paramètre « page= » dans la chaîne de paramètres de l’URL.

#Noindex et follow pour les pages 2,3,4...
RewriteCond %{QUERY_STRING} page=.*
RewriteRule (.*) - [E=NOINDEXFOLLOW]
Header set X-Robots-Tag "noindex, follow" env=NOINDEXFOLLOW

Désindexer certains types de fichiers

Vous avez des fichiers Word de type DOC, DOCX indexés par erreur que vous souhaitez voir disparaître de l’index Google? Google ne tient pas compte des directives de votre fichier robots.txt, comme d’hab? (vous êtes étonnés?) Alors notre en-tête magique X-Robot-Tag va vous sauver, ces fichiers se retrouverons désindexés au bout de quelques semaines.

#Bloquer l'indexation des fichiers Word
<Files ~ "\.(doc|docx)$">
Header set X-Robots-Tag "noindex, nofollow"
</Files>

Désindexer les pages contenant un paramètre d’URL spécifique

Des URL contenant des paramètres de tri/ordre du type http://www.monsite.com/catalogue/bougies?order=asc vous génèrent du contenu dupliqué à foison? Voilà de quoi les faire sortir des pages de résultats Google.

# empêcher l’indexation des URL contenant un paramètre de tri ?order=
RewriteCond %{QUERY_STRING} ^order=(.*)$ [NC]
RewriteRule . - [E=headernoindex]
Header set X-Robots-Tag "noindex, nofollow" env=headernoindex

Bloquer l’indexation d’un répertoire spécifique

Votre répertoire /perso/ a été indexé? Dommage… il fallait faire attention, tant pis pour vous.
Trève de plaisanterie, voilà de quoi faire désindexer vos relevés de comptes, mots de passe et bulletins de salaires ^^

#vous feriez mieux de ne pas héberger vos fichiers perso ici!!!
RewriteCond %{REQUEST_URI} ^/perso/.*$ 
RewriteRule . - [E=headernoindex]
Header set X-Robots-Tag "noindex" env=headernoindex

ça ne sont que des exemples, libre recours à votre imagination pour la suite. Non, je ne parlerais pas de cloaking ;-)

écrit dans Apache par Aymeric | 36 commentaires

36 commentaires "Les en-têtes HTTP ou comment maîtriser son indexation sur Google"