J'ai un sous-répertoire que je voudrais cacher aux robots d'indexation des moteurs de recherche.
Une façon de le faire est d'utiliser un robots.txt
dans le répertoire racine du serveur (la manière standard). Cependant, toute personne connaissant l'URL du site Web et possédant des connaissances de base sur le Web peut accéder au contenu du fichier robots.txt et repérer les répertoires interdits.
J'ai pensé à un moyen d'éviter cela, mais je ne sais pas si cela fonctionnera.
Soit X
le nom du sous-répertoire que je souhaite exclure. Une façon d'empêcher Web Crawlers d'indexer le X
répertoire et en même temps de rendre plus difficile pour quelqu'un d'identifier le X
répertoire à partir de la racine robots.txt
, consiste à ajouter le robots.txt
dans le X
répertoire au lieu du répertoire racine.
Si je suis cette solution, j'ai les questions suivantes:
- Les explorateurs Web trouveront-ils le
robots.txt
dans le sous-répertoire? (étant donné que, ilrobots.txt
existe déjà et dans le répertoire racine aussi) Si se
robots.txt
trouve dans leX
sous-répertoire, dois-je utiliser des chemins relatifs ou absolus?:User-agent: * Disallow: /X/
ou
User-agent: * Disallow: /
la source
Réponses:
Non, les robots d'indexation Web ne liront ni n'obéiront à un fichier robots.txt dans un sous-répertoire. Comme décrit sur le site quasi officiel de robotstxt.org :
ou sur les pages d'aide de Google (c'est moi qui souligne ):
Dans tous les cas, l'utilisation de robots.txt pour masquer les pages sensibles des résultats de recherche est de toute façon une mauvaise idée, car les moteurs de recherche peuvent indexer des pages interdites dans robots.txt si d'autres pages y sont liées. Ou, comme décrit sur la page d'aide Google liée ci-dessus:
Alors, que devez-vous faire à la place?
Vous pouvez laisser les moteurs de recherche explorer les pages (s'ils les trouvent), mais inclure une balise Meta robots avec le contenu
noindex,nofollow
. Cela indiquera aux moteurs de recherche de ne pas indexer ces pages même s'ils trouvent des liens vers celles-ci et de ne suivre aucun autre lien à partir de ces pages. (Bien sûr, cela ne fonctionnera que pour les pages Web HTML.)Pour les ressources non HTML, vous pouvez configurer votre serveur Web (par exemple en utilisant un
.htaccess
fichier) pour envoyer l'en -tête HTTP X-Robots-Tag avec le même contenu.Vous pouvez configurer l'authentification par mot de passe pour protéger les pages sensibles. En plus de protéger les pages des visiteurs humains non autorisés, il éloignera également efficacement les robots d'indexation.
la source
Vous
robots.txt
devez être dans le répertoire racine et ne pas avoir d'autre nom. Selon la spécification standard :la source
/robots.txt
est la norme, alors comment les moteurs de recherche sauraient-ils même où chercher autrement?Vous POUVEZ réellement utiliser un fichier robots.txt dans un sous-répertoire. C'est actuellement ainsi que nous traitons nos sous-domaines linguistiques. Nous utilisons une redirection 301 du /robots.txt vers un /lang/robots.txt (par sous-domaine) et il est correctement récupéré.
Il sélectionne également la structure de dossiers comme racine correcte, lors de l'utilisation d'une simple barre oblique. par exemple. interdire: /
est traité comme interdisant tout et pas seulement le sous-répertoire actuel dans lequel se trouve le fichier {redirected} robots.txt.
Mais encore une fois, nous redirigeons avec un 301 et avons cela en place, donc sans un 301, je doute qu'il soit jamais trouvé ...
la source