Bien souvent nous utilisons le fichier robots.txt pour dire à Google de ne pas crawler des éléments (pages, dossiers,…). Mais ce n’est pas parce que le robot de Google
ne visite pas ces URLs qu’il ne les indexe pas !
Moi le premier j’ai eu quelques soucis avec cela, je mettais quelques lignes dans mon fichier robots.txt mais Google indexait quand même certaines pages qu’il ne fallait pas.
Récemment un article a été posté sur le blog Noviseo concernant la désindexation d’une URL. Sa solution consiste à placer une balise dans le header de la page à ne pas indexer.
Et c’est ce qu’il me fallait pour empêcher Google d’indexer certaines pages, mais un autre problème est survenu.
Comment empêcher Google d’indexer d’autre type de contenu (image, PDF, fichier flash,…) ?
Alors j’ai fait quelques recherche et j’ai trouvé ce qu’il me fallait, c’est pourquoi j’ai rédigé cet article.
J’ai trouvé 3 méthodes différentes pour y parvenir les voici.
Utiliser un meta-tag
Cette méthode reprend la solution proposée par Noviseo dans son article. Pour faire un petit rappel, il vous suffit de placer la ligne suivante dans les pages à ne pas indexer.
[cc escaped=”true” tab_size=”4″]
[/cc]
Cette ligne permet de dire à tous les robots de ne pas indexer la page mais de l’explorer quand même.
Et si jamais vous voulez dire à tous les robots de ne pas explorer la page et d’empêcher l’indexation seulement à Google voici les balises.
[cc escaped=”true” tab_size=”4″]
[/cc]
Utiliser un .htaccess
Grâce à cette méthode je vais enfin pouvoir dire à Google de ne pas indexer des fichiers flash par exemple.
Pour cela il vous suffit d’ajouter dans votre fichier .htaccess le code suivant :
[cc escaped=”true” tab_size=”4″]
Header set X-Robots-Tag “noindex, nofollow”
[/cc]
Ainsi les robots n’indexeront plus vos fichiers flash.
Vous pouvez très bien adapter l’extension de fichier à vos besoins.
C’est vraiment la solution idéale pour contrôler l’indexation du contenu autre que des pages web.
Utiliser les headers HTTP
Cette dernière méthode permet de modifier le comportement des robots via le header HTTP.
Par exemple en PHP, si vous voulez bloquer l’indexation d’une page il vous suffit de rajouter le code suivant :
[cc lang=”php” escaped=”true” tab_size=”4″]
[/cc]
Les directives pour dompter les robots
Voilà maintenant que vous avez vu les principales méthodes pour modifier le comportement des robots face à votre contenu nous allons voir quelles options nous pouvons utiliser.
- all : Valeur par défaut indiquant aux robots qu’il n’y a pas de restrictions (tout est indexé et tout est exploré)
- noindex : Ne pas afficher la page dans les SERPs (page de résultats)
- nofollow : Ne pas continuer l’exploration de la page (n’explore pas les liens contenu dans la page)
- none : équivaut à “noindex, nofollow”
- noarchive : empèche la mise en cache (le lien “En cache” ne sera pas présent)
- nosnippet : empèche l’affichage des snippets
- noodp : empèche l’utilisation des meta données de Dmoz.org
- notranslate : ne pas proposer la traduction dans les SERPs
- noimageindex : ne pas indexer les images contenu dans la page
- unavailable_after : [RFC-850 date/time] : ne pas afficher la page après la date spécifié (la date doit être au format RFC 850, ex: Thursday, 13-Dec-12 14:45:36 CET)
Voilà toutes les directives qui peuvent être utiliser dans votre balise robots, ou dans votre X-Robots-Tag.
A vous d’utiliser les bonnes combinaisons pour parvenir à votre but.
Voilà donc qui répond au questions posée en commentaires sur l’article de sylvain.
Mais maintenant que je vois ce que tu viens d’écrire, je me sens bête d’avoir posé moi aussi la question, puisqu’il me semble avoir déjà vu ces pratiques quelque part.
Toutefois, une dernière note;
Il me semble utile de préciser que la directive dans le htaccess et le header php font exactement la même chose, ils envoient tout les deux un entête http …
C’est qu’un détails mais la manière dont tu l’écris me ferais croire que google va lire les directives comme lorsqu’il lit les recommandation d’un fichier robots.txt, or c’est un fichier qui n’est accessible que par le serveur. 🙂
Oui le htaccess et le header php font la même chose, ce sont juste des façon différentes d’y arriver 😉
Le fichier est accessible que par le serveur oui, mais il envoie les informations via header HTTP, du coup tout le monde peut lires ces directives.