Un hombre contra un robot: msnbot
Me llevé una sorpresa cuando vi que uno de los sitios web que mantengo, de la noche a la mañana, había duplicado su número de visitas.
Por fin... ¿El éxito? ¿El resto del mundo se ha dado cuenta de que esta página merece la pena? ¿Nos han enlazando desde algún sitio 'importante'? ¿Ya podemos poner un par de auncios y empezar a amasar millones? :-) ...
Nooo...Msnbot nos ha descubierto!. Cuando me pongo a mirar las estadísticas en detalle, descubro que la mitad de las páginas vistas corresponden a este 'bicho'.
Un 'bot' es un programa que navega por la red, normalmente recopilando información. Los más extendidos son los indexadores de los buscadores, que se dedican a leerse todas las páginas, seguir todos los enlaces seguibles, y recopilar información que luego aparece en los resultados de las búsquedas. Google tiene el suyo, Googlebot, que por cierto ultimamente se identifica como Mozilla/5.0 (compatible; Googlebot/2.1 ..) y hay alguno más, como Yahoo o AskJeeves
Hace tiempo que me había buscado y encontrado en Google, lo que significa que Googlebot lleva varios meses leyendo e indexando mis páginas. Ningún problema, porque éste nunca ha supuesto más que un 2% del total, lo que significa unos 1000 'hits' al mes, similar al de Yahoo que se mantiene en los mismos niveles.
Pero este, msnbot, el robot que ha desarrollado Microsoft para montarse un servicio nuevo de búsqueda, desbancar a Google y dominar por fin el mundo :-) es un verdadero hijo de puta. Bueno, dicen eso de "No atribuyas a la mala fe algo que es atribuible simplemente a la incompetencia", así que nos quedaremos con eso. El caso es que este 'engendro', se estaba chupando la mitad de mi ancho de banda; él solito era el responsable de casi 1000 visitas diarias. Así que tenía que hacer algo.
Primer intento: robots.txt. Este fichero, que colocas en la raiz del sitio web y se encarga de decirles a estos 'bots' los directorios que quieres que indexen y los que no es algo que tenía que haber puesto hace tiempo... Así que puse uno.
Resultado: Googlebot se comporta respetuosamente, siguiendo mis directivas, pero msnbot ni puto caso.
Segundo intento: Leyendo experiencias similares por ahí, y siguiendo las directivas de Microsoft, añadí un par de líneas en robots.txt dirigidas expresamente a msnbot, diciéndole que no indexe mi sitio web. No es que no quiera aparecer en su buscador, si algún día ve la luz, por muy malvados que sean estos de Microsoft, pero no a ese precio.
Resultado: Ni puto caso, seguimos igual
Tercer intento: Configurar el servidor para que sencillamente deniegue el acceso a msnbot o prohibir el rango de direcciones ip que suele utilizar, de lo cual hay alguna documentación por internet, vamos a ver, no tiene que ser muy difícil y con Apache se puede hacer cualquier cosa...
Y en estas estaba cuando me he dado cuenta de que por fin msnbot se ha leído y ha obedecido mi 'robots.txt'... ¡¡Dos días después!!
Conclusiones sobre msnbot:
a) Es lento pero si se lo dices clarito entiende.
b) Lo único que entiende son estas dos líneas colocadas al principio de mi 'robots.txt':
User-Agent: msnbot
Disallow: /