Disallow: /robots.txt y otras tontás SEO


El fichero «Robots.txt» es un fósil viviente que surgió hace más de 20 años, en los inicios de Internet y la WWW, y con el que todavía nos tenemos que pelear los que nos dedicamos a la arquitectura web y al posicionamiento SEO.

Todos sabemos que es una de las maneras que tenemos los profesionales del SEO de decirle a Google:

 Estos ficheros si/no quiero que accedas a ellos.

Aunque esto no es realmente un impedimento para que cualquier crawler pase de las reglas, e inspeccione toda nuestra web.

 

-«Artículo actualizado en Octubre 2016 para el robots.txt de WordPress«-

 

Existen varias maneras de ordenar a los bots de los buscadores que quieres y que no, que escanéen y que almacenen en su índice, y para ayudarnos en las estrategias de link-sculpting:

  1. Mediante el fichero
    robots.txt
  2. Poniento en cada página el tag HTML
    <meta name=”robots” content=”noindex,nofollow” />
  3. Estableciendo para cada fichero, la cabecera
    Header set X-Robots-Tag «noindex,noarchive,nosnippet,nofollow»
  4. Mediante el atributos en el HTML
    rel=»nofollow» y rel=»canonical»
  5. Devolviendo códigos de estado 30x y 4xx mediante reglas del .htaccess
    RewriteRule ^wp-admin/ – [L,R=404]

Entonces ¿por que se usa robots.txt? Pues por comodidad -para no tener que ir página a página estableciendo cada regla- y simpleza.

Sobre el robots.txt, hay que saber que no sirve para quitar contenido ya indexado en Google, para esto está Google Search Console, y que un:

User-agent: *
Disallow: /

tampoco impide que las urls de las páginas de la web que estén enlazadas desde contenido externo, sean incluidas en el índice de Google (el enlace, no el contenido).

Otra cagada:

User-agent: *
Disallow: /ocultos/mispasswords.txt

El fichero Robots.txt no ha de usarse para ocultar ficheros, puesto que en el propio robots.txt ya estás anunciando a diestro y siniestro donde no quieres que miren, y lo van a hacer.

Si usas un «Disallow» en páginas que quieras usar el tag «<meta robots>«, Google ya no las podrá leer y perderás la capacidad de usar «follow/nofollow«.

Es mejor tener un fichero robots.txt vacío que no tenerlo, puesto que te ahorrarás cientos de errores 404.

Una equivalencia de la siguiente regla de fichero robots.txt,

User-agent: *
Disallow: /*.swf$

se puede implementar usando el fichero .htaccess, pero teniendo más funcionalidad:

<filesmatch "\.swf"="">
Header set X-Robots-Tag "noindex,noarchive,nosnippet,follow"
</filesmatch>

Una eficiente manera de que realizando un proyecto de sitio web o de eCommerce y que mientras esté en construcción no sea accedido ni indexado por ningún rastreador, es proteger todo el dominio con «.htpassd».

Ten siempre en cuenta, que si bloqueas ficheros (.css y .js) de tal manera que Google no puede generar la página completa, esto te afectatá al ranking en el SERP.

Mucho cuidado con este tipo de manipulaciones, puesto que pueden afectar a cómo se traspasa la autoridad entre páginas.

 


Cómo emular las funciones de «robots.txt»

Ahora que ya sabemos como usar otras alternativas al robots.txt, podremos hacer lo que este fichero hace para poder prescindir de él o desactivarlo temporalmente.

El fichero «robots.txt» típico en WordPress es el siguiente:

User-agent: *
Disallow: /wp-admin/

Otros directorios cuyos ficheros no queremos que aparezcan nunca en el SERP de Google son «/wp-includes/» y «/wp-content/» (exceptuando «/wp-content/uploads/»).

Como antes comentaba, con estas reglas en «robots.txt», si se da el caso de que Google ya ha indexado algunos ficheros, estos seguirán en su índice puesto que no los visitará para leer el comando que le indicaría que no los queremos indexar, generando el típico efecto de Index Bloat.

La solución a esto es desactivar temporalmente la funcionalidad del fichero robots.txt. La mejor manera de hacer esto es crear el fichero » robots.txt con un solo byte de contenido, poniendo solo el comentario «#». No es conveniente borrarlo, puesto que o se generará dinámicamente por el WordPress, o si esto no fuese así, llenaríamos el «error log» de nuestro servidor web con errores de peticiones fallidas para este fichero.

Después tenemos que ubicar en cada directorio padre con ficheros a desindexar, por ejemplo en «/wp-admin/», el fichero «.htaccess» con el siguiente comando:

Header set X-Robots-Tag "noindex"

De esta manera, para cada fichero -DE CUALQUIER EXTENSION (gif, pdf, doc, …)- que esté en dicho directorio o en sus subdirectorios, Google podrá leerlo y obtener en la cabecera la etiqueta que le indicará que no queremos que lo incluya en su índice.

Podemos volver a reponer el fichero «robots.txt» una vez que ya no estén los ficheros en el índice de Google. Si por el contrario queremos dejar inhabilitada la funcionalida del «robots.txt», todos los ficheros serán accedidos por el crawler y esto nos consumirá ancho de banda y crawl budget, reduciendo el crawl rate de nuestras páginas más importantes.

 

Puedes saber más sobre Index Bloat en mi artículo «los problemas con el Index Bloat«.


 

Y una última cosa, ¿qué pasa con?

User-agent: *
Disallow: /robots.txt

Dicen que como Google ha accedido al fichero en el que se encuentra una regla que dice que no debería de haber accedido, el bot de Google entra en un bucle sinfín y acaba posicionando la web en primer lugar para todas las keywords posibles.

¿Será verdad?

Deja un comentario

Para comentar has de leer y aceptar la Política de privacidad.

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.