El archivo robots.txt

El otro día en ¿Cómo crear un sitio web bajo WordPress con uno o varios alias de nombre de dominio?, os esbozábamos apenas unas cuantas líneas sobre el archivo robots.txt, y hoy queremos profundizar un poco más en este pequeño y, en apariencia, insignificante, pero importantísimo archivo.

Pero empecemos por el principio, ¿qué es el archivo robots.txt? La respuesta a esta pregunta es igual de simple y sencilla que el propio archivo, es un archivo de texto que sirve para indicar, ojo, sólo indicar, a los buscadores web, bueno en realidad a los robots, web bots, bots, spiders, arañas, indexadores o crawlers de éstos, como más os guste llamarlos, qué partes de nuestro sitio web pueden rastrear y cuáles no, además indica la dirección o direcciones de nuestro/s archivo/s de mapa del sitio (sitemap).

Es un archivo tremendamente útil tanto para los propios bots de los buscadores web como para los webmasters, ya que gracias a él:

  • Bloquearemos a determinados robots: spambots y robots maliciosos, aunque para hacer este bloqueo efectivo hay que añadir cierto contenido al archivo .htaccess, que explicaremos detenidamente en otra entrada posterior.
  • Ahorraremos tiempo a los crawlers: dado que le estamos marcando claramente qué partes de nuestro contenido deben rastrear, éstos evitarán el resto del contenido, por lo que les haremos trabajar mucho más rápido.
  • Ahorraremos ancho de banda: al dirigir correctamente el tráfico de los spiders, éstos emplearán no sólo el menor tiempo posible en leer nuestro contenido, sino que al leer sólo aquello que queremos, ahorramos a nuestro servidor de servir contenido innecesario, y por lo tanto, ahorramos ancho de banda.
  • Eliminaremos contenido innecesario de los resultados de búsqueda: si no lo leen, no lo indexan y por lo tanto no aparece en los resultados de búsqueda.
  • Evitaremos que se rastreen partes privadas de nuestro sitio web: lo normal es que los spiders respeten nuestras indicaciones, pero aún así alguno puede tener la intención de leer determinado contenido sensible o prohibido, para ello de nuevo tenemos que hacer uso de nuestro mejor aliado, el archivo .htaccess, pero, de nuevo, eso será otra historia.
  • Evitaremos contenido duplicado de los resultados: si nuestras páginas web pueden ser llamadas de distintas formas, por ejemplo: mi-pagina.htm, mi-pagina.php, pagina.php?identificador=mi…, eso se considera contenido duplicado, así que hay que hacer un duro trabajo para evitarlo. En APG somos más amigos de utilizar el archivo .htaccess para estas labores, pero el archivo robots.txt también puede ayudarnos en algunos casos.
  • Indicaremos a los robots la dirección de los archivos sitemap: gracias a ellos podemos darles el que consideramos único contenido indexable.

Y ¿cómo funciona? Es muy simple, utiliza unas pocas reglas que son extraordinariamente fáciles de aprender y que están perfectamente indicadas y documentadas en The Web Robots Pages. Y ojo, que no es la única forma de hacer todo esto posible, ya que también existen unas etiquetas especiales que se pueden utilizar directamente en el código HTML de nuestras páginas web para realizar el mismo trabajo. Estas etiquetas son las META, y básicamente adquieren seis formas:

Cuyo significado es:

  • Las etiquetas META de las líneas 1 y 3 son sinónimas, e indican a los robots que indexen la página web (index) y sus enlaces (follow), es decir todo el contenido (all).
  • Por el contrario las etiquetas META de las líneas 2 y 4, que también son sinónimas, indican a los spiders todo lo contrario, que no indexen la página web (noindex) ni sus enlaces (nofollow), es decir ningún contenido (none).
  • La etiqueta META de la línea 5 indica a los bots que indexe la página web (index), pero no sus enlaces (nofollow).
  • Y por último, la etiqueta META de la línea 6 indica a los web bots que no indexe la página web (noindex), pero si sus enlaces (follow).

La gran diferencia entre el uso de la etiqueta META y del archivo robots.txt radica en que la primera sólo afecta a una página web en concreto, por lo que hay que añadirla en todas y cada una de las páginas web que necesitemos de un sitio web, mientras que con el archivo robots.txt podemos hacer lo mismo de una sola tacada. El uso de la etiqueta META está indicado para aquellos casos particulares en los que necesitamos que una página web en concreto ejecute una orden particular que es contraria a la generalidad del resto del sitio web y en los que no nos queremos complicar con el uso del archivo robots.txt.

En cuanto al gran protagonista de esta entrada, el archivo robots.txt, básicamente se reduce a 3 sentencias, gracias a las cuales podemos crear las órdenes que necesitamos:

Veamos cómo funcionan, teniendo en cuenta que la almohadilla (#) indica el comienzo de un comentario, por lo que todo el texto que le sigue hasta el salto de línea no es leído por los bots:

  • User-agent: indica el robot sobre el que queremos actuar, aunque puede referirse genéricamente a todos ellos. Hay que indicarlos de uno en uno, siempre antes del uso de Disallow, y hay que poner una línea en blanco entre cada uno de ellos. Las formas que puede tomar son:
    • User-agent: bingbot # para indicar a un crawler en concreto, en este caso el de Bing
    • User-agent: * # para referirnos a todos los bots, sin excepción
  • Crawl-delay: indica a los indexadores indicado anteriormente el tiempo en segundos que tienen que esperar entre cada consulta, aunque no todos lo soportan:
    • Crawl-delay: 10 # obliga a esperar 10 segundos entre cada acceso
  • Allow: permite el acceso a los web bots indicados anteriormente a determinado contenido en una carpeta prohibida, aunque, de nuevo, no es soportado por todos ellos. Se debe indicar antes del Disallowque prohíba el acceso:
    • Allow: /carpeta/archivo.ext # permite el acceso a un archivo concreto
  • Disallow: prohíbe o permite el acceso a los spiders indicados anteriormente. Permite el uso de los comodines * (secuencia de caracteres de al menos 1 carácter) y $ (fin de cadena de caracteres o fin de línea). Se pueden indicar tantos como necesitemos para cada robot. Algunas de las formas que puede tomar son:
    • Disallow: # permite el acceso a todo el contenido
    • Disallow: / # prohíbe el acceso a todo el contenido
    • Disallow: /carpeta/ # prohíbe el acceso a una carpeta en concreto
    • Disallow: /archivo.ext # prohíbe el acceso a un archivo en concreto
    • Disallow: /*.ext$ # prohíbe el acceso cualquier archivo de una extensión determinada
    • Disallow: /*.ext?*$ # prohíbe el acceso a cualquier archivo que contenga una cadena de búsqueda (query string)
  • Sitemap: indica la URLcompleta del archivo sitemap que queremos que sea indexado:
    • Sitemap: http://www.nombrededominio.ext/sitemap.xml

Un buen ejemplo de archivo robots.txt es el que podemos encontrar en este mismo sitio web:

Aunque también le puedes echar un vistazo al archivo robots.txt de Google, donde verás qué nivel de complejidad se puede obtener en este fantástico archivo.

2018-09-21T13:42:42+00:008 de abril de 2012|Categorías: Tutoriales|Etiquetas: , , |Sin comentarios

Deja tu comentario

Información básica sobre Protección de Datos

  • Responsable: EMILIO JOSÉ CALVO CARRASCO.
  • Fin del tratamiento: Mantener una relación comercial y el envío de comunicaciones sobre nuestros productos y servicios.
  • Legitimación: El consentimiento del usuario.
  • Comunicación de los datos: No se comunicarán los datos a terceros, salvo por una obligación legal.
  • Derechos: Acceder, rectificar y suprimir los datos, así como otros derechos, como se explica en la información adicional.
  • Contacto: info@artprojectgroup.es.
  • Información adicional: Puede consultar la información adicional y detallada sobre Protección de Datos en Política de Privacidad.