Tengo un subdirectorio que me gustaría ocultar de los rastreadores web del motor de búsqueda.
Una forma de hacerlo es usar a robots.txt
en el directorio raíz del servidor (la forma estándar). Sin embargo, cualquier persona que conozca la URL del sitio web y tenga algún conocimiento básico de la web puede acceder al contenido de robots.txt y puede detectar los directorios no permitidos.
Pensé en una forma de evitar esto, pero no estoy seguro de si funcionará.
Deje X
ser el nombre del subdirectorio que quiero excluir. Una forma de evitar que los rastreadores web indexen el X
directorio y, al mismo tiempo, dificultar que alguien identifique el X
directorio desde la raíz robots.txt
, es agregar robots.txt
el X
directorio en el directorio en lugar del directorio raíz.
Si sigo esta solución, tengo las siguientes preguntas:
- ¿Los rastreadores web encontrarán el
robots.txt
en el subdirectorio? (dado querobots.txt
ya existe un y en el directorio raíz) Si
robots.txt
está en elX
subdirectorio, ¿debería usar rutas relativas o absolutas ?:User-agent: * Disallow: /X/
o
User-agent: * Disallow: /
fuente
Respuestas:
No, los rastreadores web no leerán ni obedecerán un archivo robots.txt en un subdirectorio. Como se describe en el sitio cuasi oficial de robotstxt.org :
o en las páginas de ayuda de Google ( énfasis mío):
En cualquier caso, usar robots.txt para ocultar páginas sensibles de los resultados de búsqueda es una mala idea de todos modos, ya que los motores de búsqueda pueden indexar páginas no permitidas en robots.txt si otras páginas enlazan con ellas. O, como se describe en la página de ayuda de Google vinculada anteriormente:
Entonces, ¿qué deberías hacer en su lugar?
Puede dejar que los motores de búsqueda rastreen las páginas (si las encuentran), pero incluya una metaetiqueta de robots con el contenido
noindex,nofollow
. Esto le indicará a los motores de búsqueda que no indexen esas páginas, incluso si encuentran enlaces a ellas, y que no sigan más enlaces de esas páginas. (Por supuesto, esto solo funcionará para páginas web HTML).Para recursos que no sean HTML, puede configurar su servidor web (por ejemplo, usando un
.htaccess
archivo) para enviar el encabezado HTTP X-Robots-Tag con el mismo contenido.Puede configurar la autenticación de contraseña para proteger las páginas sensibles. Además de proteger las páginas de visitantes humanos no autorizados, también mantendrá alejados a los rastreadores web.
fuente
Su
robots.txt
debería estar en el directorio raíz y no debe tener ningún otro nombre. De acuerdo con la especificación estándar :fuente
/robots.txt
es el estándar, entonces, ¿cómo sabrían los motores de búsqueda dónde buscar?PUEDES usar un archivo robots.txt en un subdirectorio. Actualmente, así es como tratamos nuestros subdominios de idiomas. Utilizamos un redireccionamiento 301 desde /robots.txt a /lang/robots.txt (por subdominio) y se está recogiendo correctamente.
También está recogiendo la estructura de carpetas como la raíz correcta, cuando se utiliza una barra diagonal simple. p.ej. no permitir: /
se trata como rechazar todo y no solo el subdirectorio actual en el que reside el archivo robots.txt {redirigido}.
Pero nuevamente, redirigimos con un 301 y lo tenemos en su lugar, así que sin un 301, dudo que alguna vez se encuentre ...
fuente