Todo lo que Necesitas Saber Sobre el Archivo robots.txt

72
shares
Twitter
Google+
LinkedIn
+

Archivo robots.txt: Comic de Diesel SweetiesLos buscadores son codiciosos por naturaleza.

Quieren indexar toda la información posible, así que cuando llegan a tu sitio lo rastrean todo.

El problema surge cuando quieres evitar que ciertas páginas se incluyan en sus índices, ¿qué haces entonces?

Tienes 2 opciones:

  1. Introducir una etiqueta especial en cada página (véase Meta Robots)
  2. Usar un archivo centralizado para controlar la entrada

Esta última opción es la de robots.txt.

Qué es el archivo robots.txt y para qué sirve

Los robots o arañas son unos programas que utilizan los buscadores para rastrear la web. Cuando llegan a tu sitio, lo primero que hacen es buscar el archivo robots.txt, y dependiendo de lo que diga en él, continúan en tu sitio o se van a otro.

Puedes entender el archivo robots.txt como una lista de robots no admitidos, la cual te permite restringir el acceso a tu sitio selectivamente. Si hay páginas que prefieres mantener fuera del alcance de los buscadores, puedes configurarlo aquí, y si hay un buscador al que quieres denegar el acceso, también.

Más concretamente, puedes utilizar el archivo robots.txt para lo siguiente:

No obstante, hay un par de cosas que debes tener en cuenta sobre robots.txt:

  • Algunos robots pueden ignorar las instrucciones contenidas en este archivo, especialmente robots maliciosos o malware
  • El archivo es público, lo que significa que cualquiera puede verlo con sólo teclear www.example.com/robots.txt

Por tanto, si piensas utilizar robots.txt para esconder información privada, necesitas buscar otra alternativa.

Cómo generar el archivo robots.txt

Lo primero que necesitas saber sobre el archivo robots.txt es que no es obligatorio. Sólo necesitas crearlo cuando quieres impedir que ciertas páginas o directorios de tu sitio aparezcan en los resultados de búsqueda.

Generar el archivo es muy sencillo, basta con crear un documento de texto con el nombre “robots.txt” y subirlo a la raiz de tu dominio (http://www.example.com/robots.txt), que es el lugar donde los los buscadores esperan encontrarlo.

Lo más fácil es crearlo a mano, mediante el bloc de notas o un editor de código como Notepad++. De todos modos, si eres de los que prefieren herramientas de generación, la de SeoBook cumple con su cometido bastante bien. Otras alternativas son RobotsGenerator.com y McAnnering Robots.txt Generator.

Un archivo robots.txt básico puede ser:

User-agent: *
Disallow: /privado/

Lo que hacen estas instrucciones es denegar el acceso al directorio “privado” a todos los buscadores. Para ello, primero se indica que la orden va dirigida a todos los robots  (User-agent: *) y por último se especifica el directorio desautorizado (Disallow: /privado/).

Comandos principales

Los comandos que utiliza el archivo robots.txt vienen del llamado Robots Exclusion Protocol, un convenio universal cuya sintaxis debes seguir:

  • Sólo puedes utilizar los comandos permitidos (aunque algunos buscadores entienden comandos adicionales)
  • Debes respetar las mayúsculas/minúsculas, la puntuación y los espacios
  • Cada grupo User-agent/Disallow debe estar separado por una línea en blanco
  • Puedes incluir comentarios mediante la almohadilla o símbolo de hash (#)

Los comandos más importantes son:

  • User-agent – Indica qué tipo de robot debe cumplir con las directivas que se indiquen a continuación.
  • Disallow – Deniega el acceso a un directorio o página concreta.
  • Allow – Funciona al contrario que la directiva Disallow, permitiendo el acceso a directorios y páginas. Se puede utilizar para sobrescribir la directiva Disallow parcial o totalmente.
  • Sitemap – Indicar la ruta donde se encuentra un mapa del sitio en XML.
  • Crawl-delay – Indica al robot el número de segundos que debe esperar entre cada página. Puede ser útil en casos en los que se necesita reducir la carga del servidor.

Adicionalmente, puedes utilizar comodines para aumentar o reducir la concordancia:

  • Asterisco (*) – Vale por una secuencia cualquiera de caracteres. Por ejemplo, todos los directorios que empiezan por “privado” serían “/privado*/”
  • Dólar ($) – Indica el final de una URL. Por ejemplo, para indicar cualquier archivo que acabe con la extensión .php se utilizaría “/*.php$”.

Restricciones más comunes

Con los comandos y comodines se puede crear todo tipo de restricciones. Sin embargo, no es buena idea ser creativo con el archivo de robots, ya que puedes acabar bloqueando algo que no deseas.

En este sentido, es mejor ceñirse a las restricciones más comunes, como son:

  • Incluir todos los robotsUser-agent: *
  • Especificar el robot de GoogleUser-agent: Googlebot
  • Especificar el robot de BingUser-agent: Bingbot
  • Denegar todo el sitioDisallow: /
  • Denegar un directorioDisallow: /directorio/
  • Denegar directorios que comienzan por “algo”Disallow: /algo*/
  • Denegar una páginaDisallow: /pagina-web.htm
  • Denegar directorios y páginas que comienzan por “algo”Disallow: /algo
  • Denegar la extensión .gifDisallow: /*.gif$
  • Permitir un subdirectorioAllow: /directorio/subdirectorio/
  • Señalar el mapa del sitioSitemap: http://www.example.com/sitemap.xml

Un ejemplo de robots.txt para WordPress

Para ayudarte a comprender mejor el funcionamiento del archivo robots.txt me gustaría enseñarte un ejemplo real. Se trata del mismo archivo que utilizo en este blog, de ahí que sea un ejemplo orientado a WordPress.

No obstante, debes saber que este archivo quizá NO sea ideal para tí pese a usar WordPress. Según el caso, puede que necesites añadir restricciones, quitarlas, o usar la etiqueta meta robots. No hay un archivo robots.txt universal, tenlo en cuenta.

Recientemente he actualizado mi archivo robots.txt como sigue (sin los números de línea):

  1. User-Agent: *
  2. Disallow: /ir/
  3. Sitemap: http://deteresa.com/sitemap.xml

Ahora me gustaría explicarte cada línea:

  • Línea 1 – Declaro que las instrucciones que vienen a continuación son para los robots de cualquier buscador.
  • Línea 2 – Bloqueo el directorio que utilizo para redirecciones (no tienes por qué tenerlo).
  • Línea 3 –  Indico la ruta donde se encuentra el mapa XML de mi sitio.

Actualización: Desde que Google actualizara sus directrices para Webmasters especificando que denegar el acceso a los archivos CSS y JavaScript con robots.txt puede dañar los rankings, he eliminado el bloqueo a los directorios de WordPress (Disallow: /wp-) y posteriormente el bloqueo al directorio de plugins (Disallow: /wp-content/plugins/).

Como consejo final, te recomiendo que cuando crees tu archivo compruebes que hace lo que esperas de él. Ten en cuenta que un simple error puede bloquear el acceso a los buscadores, lo que a su vez afectaría a tus rankings. La comprobación es fácil de hacer con las Herramientas para Webmasters de Google, concretamente en Rastreo > Probador de robots.txt.

Si necesitas más información sobre el archivo robots.txt puedes encontrarla en las siguientes páginas:

¿Ya sabes cómo vas a crear tu archivo robots.txt?

Imagen vía Diesel Sweeties

Twitter
Google+
LinkedIn
+
Todo lo que Necesitas Saber Sobre el Archivo robots.txt by

¿Te gusta lo que has leído?

Recibe más en tu bandeja de entrada:

Comentarios

  1. dice

    Hola Tomás:

    No entiendo como, pero desde hace varios días Google no me indica el contenido de robots.txt. Fue de pronto, un día sin mas. Dice “Descargado: Nunca”. Y eso que antes sí que aparecía con una fecha en “Descargado”.

    No he conseguido encontrar el motivo. ¿Hay alguna razón por la que Google puede no leer este archivo?

    El archivo está bien colocado, y parece estar correctamente configurado, al menos en lo que veo.

    Por otro lado, francamente interesante tu blog. Bien clarito.

    Un saludo desde Andalucía

    • dice

      Hola MariPaz

      Lo importante es que el buscador respete las directivas de Robots. Puedes probarlo un poco más abajo, introduciendo algunas URLs y dándole al botón “Probar”. Si funciona, no hay de qué preocuparse; probablemente aparezca la fecha de descarga en la próxima actualización.

      Saludos

  2. sara dice

    hola !

    En las Herramientas para webmasters de google, el acceso a mi web está “Denegado por robots.txt”. Este archivo en mi web es: User-agent: * Disallow: /

    En wordpress, dónde puedo encontrarlo, o moficarlo ?? (No lo he creado yo)

    Gracias.

    • sara dice

      Hola de nuevo,

      Finalmente, he conseguido tener acceso al archivo robots.txt, pero aún así no me permite buscarlo en google debido a su existencia.
      Cómo puedo arreglar esto? ya que wordpress no me permite eliminarlo completamente.

      Gracias de antemano. Saludos

      • dice

        Hola Sara

        Por el momento cambia el contenido del archivo por:

        User-agent: *
        Allow: /

        De esta forma permitirás el acceso a los buscadores. Más adelante puedes configurar el archivo según tus necesidades.

          • dice

            Hola Fran

            El archivo se encuentra en la raíz del sitio (example.com/robots.txt) y para acceder necesitas usar un cliente FTP como Filezilla (https://filezilla-project.org/). También existen plugins que permiten acceder directamente desde el panel de control de el sitio, aunque eso depende del gestor de contenidos.

            Saludos

          • dice

            Buenas tardes,
            Tengo el mismo problema del robot text para indexar mi pagina a Google. No se mucho del tema pero entiendo que debo corregirlo por filezilla , se acceder a mi pagina por este programa , pero me explicas como encuentro el robot text para corregirlo, en mi caso
            el rastreador de google dice>
            User-agent: *
            Disallow: /wp-admin/

            Sitemap: artelectronica.com.co/sitemap.xml.gz

            De antemano gracias por la ayuda

  3. Maria Isabel dice

    Hola Tomás

    Si creo un web en un directorio local antes de subirla ¿es mejor hacerlo bloqueando el rastreo de la web a los buscadores y una vez subida permitir el rastreo? ¿o permitir el rastreo antes de subirla?

    Un saludo

    • dice

      Hola Maria Isabel

      Deberías bloquear el directorio hasta que la web esté lista. Lo único que en lugar de usar robots.txt te recomiendo poner acceso por contraseña. Esto puedes configurarlo mediante el archivo .htaccess y también con cPanel.

      Saludos

      • Andrés dice

        Hola Tomás, gracias por el artículo, entonces si los directorios tienen contraseña ¿no hace falta bloquearlos mediante robots, aunque tenga contenido duplicado? ¿Es malo tener muchos directorios bloqueados en robots o puede afectar al SEO? Gracias.

        • dice

          Hola Andrés

          Al estar protegidos por contraseña, no importa lo que contengan ya que los robots no podrán acceder. En cuento a tu segunda pregunta, no veo problema siempre que entre esos directorios no haya contenido que te interese que esté en el índice de Google ;-)

          Saludos

  4. dice

    muchas gracias amigo tu explicación fue muy clara, por cierto, en tu articulo mencionas que el sitemap debe estar especificado en el robots.txt, anteriormente en otro documento escuche que se debía especificar en el archivo .htacces, ¿tú que recomiendas para fines de posicionamiento de una página hecha en joomla?

    • dice

      Imagino que sería un error, se indica en el archivo robotx.txt y además es opcional. Desde mi punto de vista lo más importante es subir el Sitemap en las herramientas para webmasters del buscador.

      Saludos

  5. dice

    Tomás, me ha servido mucho la explicación sobre el uso de robots.txt, sólo me queda una duda, al momento de subirlo al server, cual es la codificación que debe tener el archivo? ANSI – UTF8 o cual.

    Gracias,

  6. Bernardo dice

    Hola Tomás, respecto tu aporte sobre el archivo robot.txt me parece estupendo, pero después de leer lo comentarios se me queda una duda que te preguntó un compañero, sobre la colocación de archivo. Yo tenía entendido que este archivo se colocaba en la carpeta raiz pero a otro compañero le dijiste que se colocara en el directorio httpdocs, si es así, que tipo de archivos se colocan en esta carpeta y el buscador google lo encontrará aun estado en una carpeta de nuestra web.
    Saludos

    • dice

      Hola Bernardo

      El archivo debe estar ubicado en la raíz del sitio. Lo que pasa es que al acceder por FTP al servidor, primero tienes que situarte en el directorio que contiene el sitio web. Este directorio suele llevar nombres como httpdocs, public_html o www, de ahí lo que le dije a Andrea.

      Espero que esto aclare tu duda.

  7. Mauricio Macas dice

    Hola Tomás, excelente post, pero tengo una duda la cual creo que será de ayuda para otros usuarios que tengan mi problema.

    Tengo google page speed instalado en el servidor de mi bog y en GMT tengo en la sección Mejoras de HTML el aviso de que tengo Páginas con etiquetas de título duplicadas y verificando estas páginas, todas tienen en la parte final:

    ?PageSpeed=noscript

    Aunque tengo como link canonical la url oficial con yoast seo plugin, me gustaría mediante robots.txt desindexar este parámetro de page speed.

    Tengo el permalink:

    blog/categoria/post/

    Con el parámetro de page speed:

    blog/categoria/post/?PageSpeed=noscript

    Como desindexo con robots.txt este parámetro según mi permalink?

    Disallow: /?PageSpeed=noscript
    Disallow: /*?PageSpeed=noscript

    Esta bien de esta forma?

    Gracias por la ayuda.

    • dice

      Hola Mauricio

      No es recomendable usar robots.txt para desindexar páginas con parámetros. Con tener la etiqueta canonical bien configurada es suficiente, aunque si te quedas más tranquilo usa además la herramienta parámetros de URL en Google Webmaster Tools.

      Saludos

Política de comentarios: Sólo acepto comentarios firmados con el nombre personal, nada de marcas ni palabras clave. Los comentarios fuera de tema, inapropiados o spam serán borrados. Los comentarios publicados previamente en foros u otros blogs, ídem de ídem.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>