Tutorial: Aprende como funciona el Robots.txt

wizardpro Seguir

Eta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
20 May 2014
Mensajes
1.302
He realizado este tutorial, de un tema que muchos webmaster pasan por alto y es uno de los principios básicos, que todo webmaster tiene que tener en cuenta una vez ha finalizado su preciosa web o blog y es saber que es el fichero robots.txt y que posibilidades de configuración tiene.

Empecemos con la definición del fichero robots.txt, que es un archivo de texto el cual indicara unas recomendaciones para los crawlers y robots, solo le indicara recomendaciones nunca unas obligaciones.

¿Qué es un crawler?, pues simplemente un robot que pertenece algún buscador. Su función es rastrear las páginas web y acceder a ellas para buscar la información que contiene y poderla clasificar en los índices de los buscadores. Ojo, son conocidos también como indexadores, bots, arañas y spiders.

El buscador más conocido y que cada día tiene más monopolio es Google, pues el Googlebot es como se conoce al crawler de dicho buscador, otros que existen son los siguientes:

• Googlebot Image, como puedes deducir, es el crawler que indexa las imágenes en Google.
• Mediapartners Google, es el crawler que revisa los anuncios del famoso Google Adsense.
• Googlebot News, es el crawler que revisa las noticias de Google News.
• Scooter, es el crawler del buscador de Altavista (Yahoo! actualmente).
• Bingbot, es el crawler del buscador de Bing (el de Microsoft)
• Slurp, es el crawler del antiguo buscador de Yahoo!

Estos son algunos, existen muchos más, en esta dirección The Web Robots Pagespodéis ver todos los crawlers que existen. Pero actualmente como ya sabéis la mayoría el predominante es Google, y el que nos hace la vida imposible con el Seo. Pero es importante saber cómo funciona el fichero de robots.txt, vamos a ello.

a1.jpg

¿Para qué nos va a servir este fichero?

- Lo primero de todo, impedir que accedan ciertos robots a nuestra web. “Que dice este tío”, si lo que quiero es que los robots sepan de mi sitio para indexarme. Pues amigo mío, hay robots que no interesan que accedan a nuestra web, porque no son robots de buscadores y algunos incluso son maliciosos, son robots que lo único que les interesa es buscar nuestras direcciones de correo o ciertos formularios, simplemente para realizar Spam, conocidos también como Spam bots. El problema de estos Spam bots, es que se hacen pasar como robots legítimos y no es tan fácil bloquearlos. Saber bloquear estos Spam bots, daría para otro tutorial, pero básicamente se trata de acceder al archivo htaccess, revisar el User agent, el rango Ip, porque el User agent suele ser fácil de falsificar por estos robots y aplicar un bloqueo con fuerza bruta, pero eso es otro tema que daría para otro tutorial.

- Segundo, podemos reducir una sobrecarga del servidor, porque podremos controlar las peticiones de ciertos robots. Algunos robots no paran de realizar peticiones al servidor provocando su saturación.

- Tercero, podemos especificar qué zonas no queremos que accedan los robots. Esto es muy útil cuando queremos que una parte de nuestra web no aparezca en los buscadores.

- Cuarto, podemos evitar el contenido duplicado, algo muy importante para que los buscadores nos den unas puntuaciones más altas para subir posiciones. Muchos webmasters se olvidan de este principio básico en el seo.

- Y quinto, puedes introducir también un sitemap para indicarle el camino a seguir a los robots.

Una vez hemos visto todo esto, vamos a ver cómo debemos crear el fichero robots.txt.

Es muy simple, hay que crear un fichero de texto con el bloc de notas de Windows, por ejemplo y crear ciertas indicaciones, como las siguientes:

User-agent: * (Indicamos nombre del buscador)
Disallow: (Indicamos la ruta)


Con estas dos líneas estamos permitiendo que puedan entrar todos los robots o crawlers, a visitar nuestra web. Luego deberemos guardar el archivo con el nombre robots.txt

La primera linea User-agent, es donde pondremos que robot o crawler queremos que acceda a nuestra web, al poner “*” le estamos diciendo que accedan todos los robots.
La segunda línea Disallow le indicamos la ruta donde está o no prohibido acceder, como por ejemplo:

• Disallow: ------------ permitiría la entrada a todo el sitio.
• Disallow: / ----------- se prohíbe la entrada a todo el sitio, es decir no seriamos indexados en los buscadores.
• Disallow: /foro/ --------- esto prohibiría la entrada a los documentos del directorio del foro.


He visto algunos webmasters, que utilizan en vez de Disallow, solo Allow, esto no es aconsejable, porque hay algunos crawlers que no entienden que significa Allow, así que no os compliquéis y utilizar siempre Disallow.

Otra de las cosas que tenemos que tener en cuenta, es que se pueden acumular varios Disallow, dentro de un mismo User-agent, en el mismo fichero txt, pero no se pueden tener varios User-agent, seguidos en un mismo fichero. Por ejemplo:

ESTO ES CORRECTO

User-agent: bingbot --------- Le estamos indicando que solo acceda el crawler del buscador Bing
Disallow:/enlaces.html ----------- Impide que el buscador Bing acceda a la página de los enlaces.html
Disallow:/privado/Disallow:/fotos/ -------- Impide que pueda accede a la carpeta privado y a la carpeta fotos.

ESTO NO ES CORRECTO

User-agent: bingbot
User-agent: Googlebot Image
Disallow:/enlaces.html
Disallow:/privado/Disallow:/fotos

Dentro del fichero robots.txt, puedes añadir comentarios a las líneas, con el carácter # al principio de la linea, por ejemplo:

# Solo dar acceso al buscador Scooper User-agent: Scooper

Ahora vamos a ver los comodines, que nos van a dar algo más de potencia a nuestras líneas.
Puedes hacer un fichero de robots.txt con diferentes reglas para diferentes robots. Imagínate el potencial que tendría un archivo de este tipo hecho a medida por ti.

Siempre que pongamos un User-agent, hay que dejar una línea en blanco de separación. Podremos utilizar ciertos comodines con el * que ya hemos visto y el $ para indicar ciertas rutas a los crawlers.

Por ejemplo:

User-agent: Bingbot Disallow:/*.js$ ---- Se indica al robot de Microsoft que no indexe los ficheros que terminen en .js que son los ficheros de javascript.
Disallow: /2010/* ------- Que no indexe las direcciones que empiecen por 2010
Disallow: /2012/* ------- Que no indexe las direcciones que empiecen por 2012
Disallow: /categoria/*/paginacocina/* ------ Que no indexe la carpeta categoría con la palabra paginacocina


Estas tres líneas son muy interesantes, para evitar el contenido duplicado. El problemas de los blogs, es que muchas veces tenemos el post principal, que lo clasificamos con fechas en este ejemplo por años, y por las categorías, con estas líneas evitamos que el robot indexe las fechas y las categorías y solo indexaría el post principal, con lo cual evitaremos la duplicidad.

Recuerda que en un blog podemos acceder a la misma información de la siguiente forma:

- Por el título del artículo.
- Por su categoría.
- Por fecha de creación.
- Por su feed (RSS del articulo)

Esto para los buscadores, es contenido duplicado. Así la importancia de saber configurar tu robot.txt para evitar esto.

Importante: Cuando utilices el comando Disallow ten mucho cuidado al configurarlo, porque no es lo mismo poner Disallow:/carpeta donde se bloqueara todo el contenido de carpeta, que Disallow:/*carpeta, donde vas a bloquear todo lo que contenga carpeta, como carpeta presupuestos, avisos carpeta, carpetas estadísticas.

Otra de las opciones interesantes será poder reducir la frecuencia con la que los robots nos pueden rastrear. Esto es muy importante, para que nuestro servidor no se sobrecargue con peticiones continúas de estos crawlers.

La forma más eficaz es poniendo estas dos líneas en el archivo robots.txt

User-agent: Bingbot
Crawl-delay: 60


Aquí l e estamos diciendo al robot Bingbot de Microsoft que debe esperar 60 segundos entre un acceso y otro. El comando Crawl-delay, no lo soportan todos los crawlers, pero si la gran mayoría.
Por último os dejo varios comandos y configuraciones según el CMS que utilicéis.

La mayoría de CMS como Wordpress, Joomla, Drupal, contienen su propio fichero robots.txt cuando instalas la aplicación. Lo único que debes hacer es añadir el comando crawl-delay, visto anteriormente, para que no sobrecargue tu servidor. También debes indicar los artículos y directorios que no quieras que sean indexados por el buscador.

Ejemplos de robots.txt:

Para un 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: /

Para un Drupal:

User-agent: *
Crawl-delay: 60
# Directories
Disallow: /includes/
Disallow: /misc/
Disallow: /modules/
Disallow: /profiles/
Disallow: /scripts/
Disallow: /sites/
Disallow: /themes/
# Files
Disallow: /changelog.txt
Disallow: /cron.php
Disallow: /install.mysql.txt
Disallow: /install.pgsql.txt
Disallow: /install.php
Disallow: /install.txt
Disallow: /license.txt
Disallow: /maintaners.txt
Disallow: /update.php
Disallow: /upgrade.txt
Disallow: /xmlrpc.php
# Paths (clean URLs)
Disallow: /admin/
Disallow: /comment/reply/
Disallow: /contact/
Disallow: /logout/
Disallow: /node/add/
Disallow: /search/
Disallow: /user/register/
Disallow: /user/password/
Disallow: /user/login/
# Paths (no clean URLs)
Disallow: /?q=admin/
Disallow: /?q=comment/reply/
Disallow: /?q=contact/
Disallow: /?q=logout/
Disallow: /?q=node/add/
Disallow: /?q=search/
Disallow: /?q=user/password/
Disallow: /?q=user/register/
Disallow: /?q=user/login/
Disallow: /?q=search/
# Extras on drupal.org
# no access for table sorting paths or any paths that have parameters
Disallow: /*?sort*
Disallow: /*&sort*
Disallow: /*?solrsort*
Disallow: /*&solrsort*
# no access to profiles that are often targeted by spammers.
Disallow: /profile/interest/*
Disallow: /profile/industries/*
Disallow: /profile/companies/*
# Disallow bogus aggregator pages
Disallow: /aggregator/*
# Disallow project search
Disallow: /project/issues/search/*
Disallow: /project/issues/*
# Disallow book export
Disallow: /book/export/*
# Disallow pift tests
Disallow: /pift/retest/*
# Disallow project subscription
Disallow: /project/issues/subscribe-mail/*

Para un Joomla:

User-agent: *
Crawl-delay: 60
Disallow: /administrator/
Disallow: /cache/
Disallow: /components/
Disallow: /images/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/

Añado este punto a petición de varias personas que me lo han solicitado.

Esta es la configuración que yo utilizo en mis blogs, la mayoria hechos con Wordpress.

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Allow: /wp-content/uploads/
Disallow: /search
Disallow: /?s=
Disallow: /feed
Disallow: /comments/feed
Allow: /feed/$
Disallow: /*/feed/$
Disallow: /*/feed/rss/$
Disallow: /*/trackback/$
Disallow: /*/*/feed/$
Disallow: /*/*/feed/rss/$
Disallow: /*/*/trackback/$
Disallow: /*/*/*/feed/$
Disallow: /*/*/*/feed/rss/$
Disallow: /*/*/*/trackback/$

Bueno eso ha sido todo, espero que este tutorial os sea de utilidad y si te ha gustado, comenta en el foro y dame un Me agrada.
 
Última edición:

AndreayYap

Ni
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
Desde
20 Ene 2013
Mensajes
3.935
Buen tutorial, lastima que casi no entiendo.... :confused:
 

wizardpro

Eta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
20 May 2014
Mensajes
1.302
Hola AndreayYap, si utilizas wordpress, simplemente añade el comando crawl-delay como indico en el ejemplo, y luego intenta localizar mas información sobre el robot.txt con el tiempo entenderas todo lo aqui expuesto.
 

jgm302

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
17 Jul 2012
Mensajes
131
El tutorial es muy bueno pero hay que hacer incapie en que es bastante peligroso tocar este archivo si no se sabe lo que se esta haciendo.
 

wizardpro

Eta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
20 May 2014
Mensajes
1.302
Cierto jgm302, por eso en este tutorial he puesto lo mas basico, y no hay peligro :encouragement:
 

Aguila SEO

Lambda
Social Media
Verificado
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
14 Jul 2010
Mensajes
2.774
Uso wp entonces solo coloco lo que pusiste en el ejemplo?
 

wizardpro

Eta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
20 May 2014
Mensajes
1.302
oriamsomel y great Kitten, si tienes wordpress, el ejemplo de wordpress te sirve, pero tienes que poner lo que realmente quieres que no vea el buscador, ese ejemplo es de los mas completos, se dan todas las variantes posibles.

- - - Actualizado - - -

Esta es la configuración que utilizo yo en mis blogs:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Allow: /wp-content/uploads/
Disallow: /search
Disallow: /?s=
Disallow: /feed
Disallow: /comments/feed
Allow: /feed/$
Disallow: /*/feed/$
Disallow: /*/feed/rss/$
Disallow: /*/trackback/$
Disallow: /*/*/feed/$
Disallow: /*/*/feed/rss/$
Disallow: /*/*/trackback/$
Disallow: /*/*/*/feed/$
Disallow: /*/*/*/feed/rss/$
Disallow: /*/*/*/trackback/$

Me funciona muy bien. :encouragement:
 

Carlos Arreola

Admin
Sigma
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
¡Excelente comerciante!
Suscripción a IA
Desde
6 Abr 2009
Mensajes
12.389
Buen aporte, se agradece :)
 

wizardpro

Eta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
20 May 2014
Mensajes
1.302
Gracias a todos por vuestros comentarios y los Me agradan :welcoming:
 

Gremlin9

Curioso
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
21 Nov 2013
Mensajes
8
Me ha sido de gran ayuda, muchas gracias!:)
Dónde está el "me agrada" para pinchar?
 
Última edición:

wizardpro

Eta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
20 May 2014
Mensajes
1.302
Me alegro de que te haya gustado, el me agrada lo tienes justo debajo de cada comentario
 

justinovive

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
26 Sep 2014
Mensajes
121
Hola emplee el ejemplo de [MENTION=109545]wizardpro[/MENTION] y ahora si exploro como google salen estas cosas:
Googlebot no ha podido obtener todos los recursos para esta página. A continuación se muestra una lista de los recursos no disponibles:
Hoja de estilo Bloqueada
(otra mas de estilo)
Secuencia de comandos Bloqueada
(unas cuantas de esta)

¿es normal esto?
DOnde pone ,Así es cómo el robot de Google ha recuperado la página:
ANtes de poner el robot.txt me salia la página como se ve entrando por un navegador, ahora sin el logo, sin los widgets a la derecha etc...
 
Última edición:

Brandon Díaz

Lambda
SEO
Verificación en dos pasos activada
Desde
24 Nov 2011
Mensajes
2.815
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: /

Nada más un comentario, recientemente (desde Octubre 2014) Google recomienda que le permitas rastrear los CSS y los JS:

"
Para que Google pueda entender completamente el contenido de tu sitio debes permitir que se rastreen todos los elementos de tu sitio como, por ejemplo, CSS y archivos de JavaScript." :)
 
Arriba