robots.txt: qué es y cómo utilizarlo correctamente

El archivo robots.txt publica instrucciones para los rastreadores que respetan el Protocolo de Exclusión de Robots. Su función principal es administrar qué partes de un sitio pueden solicitar los bots; no sirve para proteger archivos privados ni garantiza que una URL desaparezca de los resultados de búsqueda.

Debe encontrarse en la raíz exacta del sitio, por ejemplo https://www.ejemplo.com/robots.txt, responder correctamente y estar disponible como texto. Las reglas se aplican al protocolo, host y puerto donde se publica el archivo. Por lo tanto, el robots.txt de https://www.ejemplo.com/ no controla automáticamente otro subdominio.

Sintaxis básica de robots.txt

Las reglas se organizan en grupos. User-agent identifica al rastreador y Disallow indica una ruta que no debería solicitar. Una línea Disallow: vacía no bloquea nada.

User-agent: *
Disallow: /directorio-privado-para-rastreo/

Sitemap: https://www.ejemplo.com/sitemap_index.xml

El asterisco representa a los rastreadores en general. También se pueden crear grupos específicos para un bot determinado. Las rutas distinguen mayúsculas de minúsculas y comienzan desde la raíz del host. Un error de escritura puede bloquear demasiado contenido o no bloquear nada.

Qué diferencia existe entre rastreo e indexación

Bloquear el rastreo significa pedirle al bot que no descargue una URL. Impedir la indexación significa solicitar que esa URL no aparezca en los resultados. Son objetivos diferentes.

Una página bloqueada mediante robots.txt todavía puede aparecer como una URL sin descripción si otros sitios enlazan hacia ella. Para excluir una página HTML de Google se utiliza normalmente una directiva noindex en el documento o en la cabecera HTTP. Para que el buscador pueda ver esa directiva, la URL no debe estar bloqueada simultáneamente en robots.txt.

La documentación oficial de Google sobre robots.txt recomienda utilizarlo para administrar tráfico de rastreo, no como mecanismo para ocultar páginas. Si querés profundizar en la relación entre rastreo, indexación y posicionamiento, consultá también qué es SEO y para qué sirve.

robots.txt no es una medida de seguridad

El archivo es público: cualquier persona puede abrirlo y conocer las rutas declaradas. Además, un bot malicioso puede ignorar sus instrucciones. Nunca publiques allí ubicaciones de copias de seguridad, archivos de configuración, paneles secretos o información confidencial.

Los recursos privados deben protegerse con autenticación y permisos adecuados o quedar fuera del directorio público. Para determinados archivos en Apache también podés aplicar reglas de acceso; nuestra guía explica cómo bloquear el acceso web a archivos sensibles con .htaccess.

Uso de Allow, comodines y fin de URL

Los principales buscadores admiten Allow para habilitar una ruta más específica dentro de otra bloqueada. También suelen reconocer el asterisco como comodín y el signo $ para marcar el final de una URL. Antes de depender de estas extensiones, verificá la documentación del rastreador que te interesa.

User-agent: *
Disallow: /archivos/
Allow: /archivos/publicos/
Disallow: /*.zip$

No agregues Crawl-delay suponiendo que todos los buscadores lo interpretan igual. Google no utiliza esa directiva. Si un rastreador provoca una carga anormal, analizá primero su identidad y recurrí a los controles del servidor, del firewall o del servicio correspondiente.

Cómo declarar el sitemap

La línea Sitemap: puede aparecer en cualquier parte del archivo y debe contener una URL absoluta. Es posible incluir más de un sitemap.

Sitemap: https://www.ejemplo.com/sitemap_index.xml
Sitemap: https://www.ejemplo.com/sitemap-noticias.xml

Publicar el sitemap facilita que el buscador descubra URLs importantes, pero no garantiza su indexación. También puede enviarse mediante Google Search Console. Nuestra nota sobre registrar un sitio en Google y otros buscadores explica cuándo es necesario intervenir.

Ejemplo prudente para WordPress

Una configuración frecuente permite el acceso general, evita el rastreo del área administrativa y mantiene disponible el endpoint utilizado por algunas funciones del sitio:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

Sitemap: https://www.ejemplo.com/sitemap_index.xml

No bloquees de forma general /wp-content/, archivos CSS, JavaScript o imágenes necesarias para mostrar las páginas. Los buscadores modernos renderizan el contenido y necesitan acceder a esos recursos para comprender correctamente el diseño y el comportamiento. Tampoco copies reglas extensas de otro sitio sin revisar si sus rutas y objetivos coinciden con los tuyos.

Archivo físico o robots.txt virtual en WordPress

WordPress puede generar un robots.txt virtual cuando no existe un archivo físico en la raíz. Algunos plugins SEO permiten modificarlo desde el panel. Si creás un archivo real, verificá cuál de las dos versiones está sirviendo el dominio y evitá mantener configuraciones contradictorias.

Después de guardar cambios, abrí directamente la URL pública en una ventana sin sesión iniciada. Confirmá que responde con estado HTTP 200, que no muestra HTML ni redirecciones inesperadas y que conserva saltos de línea legibles.

Errores frecuentes

  • Usar robots.txt para intentar ocultar información confidencial.
  • Bloquear una página y agregarle noindex al mismo tiempo, impidiendo que el bot lea la segunda instrucción.
  • Escribir Disallow: /, lo que solicita bloquear todo el sitio.
  • Bloquear recursos indispensables para renderizar las páginas.
  • Confundir una ruta con una URL completa dentro de Disallow.
  • Modificar el archivo sin comprobar el resultado público.

Cómo probar los cambios sin afectar el sitio

  1. Guardá una copia del robots.txt actual.
  2. Definí qué problema de rastreo querés resolver.
  3. Aplicá la regla más específica posible.
  4. Comprobá varias URLs que deberían estar permitidas y bloqueadas.
  5. Revisá la herramienta de inspección y los informes de Search Console.
  6. Monitoreá el rastreo y la indexación durante los días siguientes.

Un robots.txt breve, documentado y alineado con la estructura real del sitio suele ser más seguro que una colección de reglas copiadas sin contexto. Revisalo cada vez que cambies URLs, plugins, subdominios o la organización del contenido.