Evitar sobrecarga web por robots

En un artículo anterior, hablábamos de los llamados robots web o crawlers y que de manera automática trabajaban descubriendo y actualizando las bases de datos de los buscadores web como yahoo, bing o google.

rendimiento_web

Estos robots, podían en algunos casos provocar la sobrecarga e incluso la caída del sistema, en el caso de aplicaciones web con grandes bases de datos o en servidores que ya de por si tienen alta carga en el sistema. El llamado rapid fire en el que se indexan webs rápidamente, por medio de cientos de conexiones por segundo.

Existen medios para controlar estos robots. Existe un archivo estandarizado para la exclusión de estos web crawlers llamado “robots.txt” que lo situaríamos en el directorio raíz de nuestra página web. El nombre del archivo tiene que ser todo en minúsculas «robots.txt», no funcionará si contiene alguna mayúscula Robots.TXT”.

Entonces lo primero que debería hacer un robot o webcrawler que sigue unos estándares, sería visitar este archivo robots.txt, para ver existe algún tipo de restricción para visitar el sitio web. Cuando un robot o crawler busca en la url el archivo “/robots.txt”, quita toda la ruta de la url a partir de la primera “/” y añade “/robots.txt” en su lugar.

Ejemplo para https://www.sudominio.com/tienda/index.html eliminaría “/tienda/index.html” y pondría “/robots.txt” en su lugar.

Ahora veremos el contenido,  que podemos incluir dentro de este archivo.

Ejemplos de archivo robots.txt:


User-Agent: (Nombre del bot)
Disallow: (Nombre del archivo o carpeta que no se quiere indexar) .
Disallow: (prohíbe acceso a toda la web).
Disallow: /foro/ (prohíbe acceso al robot a la carpeta foro
Disallow: permite acceso a toda la web
# La almohadilla es para comentarios, no tiene en cuenta esta línea.
 

Otro Ejemplo:


User-agent: *    (el asterisco afecta a todos los robots)
Crawl-delay: 30 (Esta variable es útil para evitar la sobrecarga provocada por el acceso de los robots a la web. Limita el tiempo entre cada acceso del robot, en este caso a 30 segundos entre cada acceso. (Esta directiva puede que no afecte a algunos robots. Con googlebot si que funciona.
Visit-time: 0100-0830 (Permitir trabajar a los buscadores de 1 am a 8:30 am, hora Greenwitch.
Request-rate: 3/45m (Permite indexar 3 documentos cada 45 minutos). 
Request-rate: 1/15m 1500-1700 Permite 1 doc cada 15 minutos y entre las 3 y 5 de la tarde.

Ejemplo de robots.txt recomendado para WordPress:


User-agent: *
Crawl-Delay: 60
Disallow: /wp-content/
Disallow: /wp-icludes/
Disallow: /trackback/
Disallow: /wp-admin/
Disallow: /archives/
Disallow: /category/
Disallow: /tag/*
Disallow: /tag/
Disallow: /wp-*
Disallow: /login/
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.php$
User-agent: All
Allow:/
User-agent: Googlebot-Image
Disallow: /
User-agent: ia_archiver
Disallow: /
User-agent: duggmirror
Disallow: /

Recomendaciones:

  • Se aconseja no incluir más de 200 líneas Disallow en un fichero de robots.txt
  • Usar Disallow solamente para deshabilitar carpetas completas. Si sólo necesitas que no se indexe una página, puedes utilizar etiquetas meta en la cabecera. Ej: <meta content=”noindex, nofollow” name=”robots”>
  • Los buscadores pueden tardar hasta 3 meses en volver a actualizar los resultados, por lo que es importante asegurarse antes de hacer un Disallow
  • Para ver lo que google ha indexado de nuestra página web y compararlo con lo que hemos dicho que no indexe, podemos buscar  site: www.nuestraweb.com

Comparte este tutorial:

No hay comentarios en este tutorial

Sé el primero en enviar un comentario: