Los robots de los buscadores también se conocen como spiders

Los robots de los buscadores también se conocen como spiders

Yo desde que inicie en el mundo de los sitios web, note que en muchos proyectos libres para crear tu propio foro, blog u otro sitio, en todos incluían el archivo robots.txt y no sabia para que servia, pero después de iniciar con mi blog empece a averiguar todo lo que pude y ahora entiendo la importancia de este archivo de texto.

¿Que es y para que sirve robots.txt?

Robots.txt es un archivo de texto donde se especifican los permisos para que los robots de los buscadores puedan indexar tu sitio web en los resultados, esto a primera instancia suena bien, pero voy a dar una breve explicación sobre la edición optima de este archivo de texto, ya que algunos dicen que solo con optimizar su archivo robots.txt mejoraron 1400% el trafico en su sitio web.

La creación el archivo robots.txt

El ejemplo que manejare esta basado en el archivo de WordPress que utilice para mi blog, pero puede ser fácilmente editado para cualquier otro tipo de pagina web.

Para iniciar se deben especificar los permisos a los robots para evitar que entren en lugares privados o entrar a lugares donde puedan encontrar información duplicada, por ejemplo entrar en categorías, tags o feeds, en ellos encontrara los mismos artículos que tenemos desde la pagina principal y a los buscadores les molesta encontrar tanta información repetida en un sitio, porque para ellos significa que no es un sitio confiable o con buen contenido.

Primero debemos especificar a que robot es al que le estamos dando los permisos, para eso utilizamos User-agent, por ejemplo:

(el signo de numero “#” se utiliza para los comentarios)

# Permisos para todos los robots
User-agent: *
...
 
# Permisos para Google
User-agent: Googlebot
...
 
# Permisos para Yahoo!
User-agent: Slurp
...

Para poder negar el acceso utilizamos Disallow o podemos permitirlo usando Allow (se recomienda solo utilizar Disallow, ya que por default todo tiene acceso al menos que tu no lo permitas usando Disallow), por ejemplo:

# Negando el acceso a todo el sitio
Disallow: /
 
# Negando el acceso a todo lo que inicia con la palabra pagina (en la raíz o carpeta especifica)
Disallow: /pagina               # /paginacion.html, /pagina_acceso.php, /paginas/, etc.
Disallow: /documentos/pagina    # /documentos/pagina-actual.doc, /documentos/pagina_anterior/, etc.
 
# Negando el acceso a la carpeta privado y todo su contenido
Disallow: /privado/
Disallow: /imagenes/fotos/
 
# Negando el acceso a un archivo
Disallow: /archivo.html
Disallow: /subido/cosas.zip
 
# Permitiendo el acceso a todo
Disallow:
 
# Permitiendo el acceso a todo (se recomienda usar solo Disallow)
Allow: /    # Para algunos robots el parámetro Allow puede dar errores

Crear los permisos para todos los robots

Ahora vamos a especificar a donde no permitiremos el acceso a todos los robots, de esa forma sera genérico el tipo de acceso para todos los robots y después podremos especificar solo algunas diferencias para algunos robots en especifico, por ejemplo:

# Para todos los robots
User-agent: *
Disallow: /cgi-bin/
Disallow: /z/j/
Disallow: /z/c/
Disallow: /stats/
Disallow: /dh_
Disallow: /tag/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/themes/
Disallow: /acerca-de/
Disallow: /contacto/
Disallow: /categoria/
Disallow: /feed/
Disallow: /trackback/

Crear los permisos para algunos robots específicos

Existen un gran numero de robots, por ejemplo:

  • Google – Googlebot
  • Yahoo – Slurp
  • Altavista – Scooter
  • Lycos – Lycos_Spider_(T-Rex)
  • Excite – ArchitextSpider
  • Alltheweb – FAST-WebCrawler/

Ahora especificaremos a que parte no deseamos que entre un robot en especifico, en este caso los robots de Google y Yahoo, pero primero tengo que explicar que estos robots permiten el uso de otros parámetros para hacer mas eficiente la declaración de permisos, permiten el uso de asteriscos (*) para declarar que puede ir cualquier cosa en esa parte, y también usa el signo de moneda ($) para declarar el final del contenido o texto, por ejemplo:

# Para no permitir las paginas que usan variables GET (cosas después de "?")
Disallow: /*?*    # /pagina.php?var1=valor&var2=otro
 
# Para no permitir archivos con extensión ".php"
Disallow: /*.php$    # /pagina.php, /entrada.php, etc.
 
# Para no permitir todo lo que inicie con wp-
Disallow: /wp-*    # /wp-include/, /wp-content/, etc.

Mi recomendación para Google:

# Para el robot de Google
User-agent: Googlebot
Disallow: /*.php$
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.cgi$
Disallow: /*.xhtml$
Disallow: /*.gz$
Disallow: /*?*

Mi recomendación para Yahoo:

# Para el robot de Yahoo
User-agent: Slurp
Disallow: /*.php$
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.cgi$
Disallow: /*.xhtml$
Disallow: /*.gz$
Disallow: /*?*

Mi recomendación para robot de imágenes de Google (busca imágenes para colocar en sus resultados) y el robot de Google Adsense (hace búsquedas para ver que publicidad puede colocar en tu sitio web):

# Permitir todo a Google Image
User-agent: Googlebot-Image
Disallow:
 
# Permitir todo a Google Adsense
User-agent: Mediapartners-Google*
Disallow:

Entra las recomendaciones me encontré también un robot que dicen es una molestia y para evitar que sature el sitio con peticiones y que tome nuestro contenido para duplicar o cosas por el estilo, es recomendable evitar que tenga acceso al sitio:

# Evitar el acceso de duggmirror
User-agent: duggmirror
Disallow: /

Agregar un sitemap del sitio

El sitemap como tal lo explicare con mas detalle en otro articulo, por ahora solo queda explicar que es recomendable agregar la ruta completa del sitemap en el archivo de texto robots.txt, porque es una manera rápida y sencilla para los robots de encontrar el contenido y agregarlo en los resultados.

Para agregarlo no hacen falta mas parámetros mas que agregar Sitemap con su respectiva ruta, por ejemplo:

# Mapa del sitio
Sitemap: http://www.pagina.com/sitemap.xml

Resultado final

Por ultimo dejo un resultado final de como debería quedar el archivo de texto robots.txt optimizado, solo quedara esperar para notar la diferencia en algunos días o semanas, ya que por desgracia no podemos acelerar el proceso de los robots y el indexado a los resultados de los buscadores.

# Para el robot de Google
User-agent: Googlebot
Disallow: /*.php$
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.cgi$
Disallow: /*.xhtml$
Disallow: /*.gz$
Disallow: /*?*
 
# Permitir todo a Google Image
User-agent: Googlebot-Image
Disallow:
 
# Permitir todo a Google Adsense
User-agent: Mediapartners-Google*
Disallow:
 
# Para el robot de Yahoo
User-agent: Slurp
Disallow: /*.php$
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.cgi$
Disallow: /*.xhtml$
Disallow: /*.gz$
Disallow: /*?*
 
# Evitar el acceso de duggmirror
User-agent: duggmirror
Disallow: /
 
# Para todos los robots
User-agent: *
Disallow: /cgi-bin/
Disallow: /z/j/
Disallow: /z/c/
Disallow: /stats/
Disallow: /dh_
Disallow: /tag/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/themes/
Disallow: /acerca-de/
Disallow: /contacto/
Disallow: /categoria/
Disallow: /feed/
Disallow: /trackback/
 
# Mapa del sitio
Sitemap: http://www.pagina.com/sitemap.xml

Para mayor información: Robotstxt.org