Que hace robots.txt (y que no hace)
robots.txt es un archivo de texto colocado en la raiz de su sitio web (https://example.com/robots.txt) que indica a los rastreadores de motores de busqueda que paginas o directorios deben o no deben visitar.
Es un protocolo de cortesia, no una medida de seguridad. Limitaciones clave:
- robots.txt solo se aplica a los rastreadores que eligen respetarlo (todos los motores de busqueda importantes lo hacen; los scrapers maliciosos no)
- Bloquear una URL en robots.txt no impide que Google la indexe si otros sitios enlazan a ella
- No puede proteger contenido privado, use autenticacion para eso
- Los errores de sintaxis rompen las reglas silenciosamente; un caracter mal colocado puede bloquear todo su sitio
La sintaxis basica
Un archivo robots.txt consiste en registros, cada uno especificando un agente de usuario y directivas:
User-agent: *
Disallow: /private/
Allow: /public/
User-agent: Googlebot
Disallow: /staging/
Sitemap: https://example.com/sitemap.xml
User-agent:, a que rastreador se aplican las siguientes directivas. * significa todos los rastreadores.
Disallow:, rutas que el rastreador no debe visitar. Un Disallow: vacio significa "no denegar nada" (permitir todo).
Allow:, permite explicitamente una ruta que de otro modo estaria bloqueada por una regla Disallow: mas amplia.
Sitemap:, opcional, indica a los rastreadores donde encontrar su sitemap XML.
Reglas importantes
La coincidencia de rutas es por prefijo
Disallow: /private/ bloquea cualquier URL que comience con /private/, incluyendo /private/pagina.html, /private/imagenes/, etc.
Disallow: / bloquea todo el sitio. Es la sintaxis correcta para bloquear todos los rastreadores, pero se aplica a todo.
Comodines
* en una ruta Disallow: coincide con cualquier secuencia de caracteres:
Disallow: /*.pdf$, bloquea todos los PDFs ($ancla el final de la URL)Disallow: /search?, bloquea todas las URLs de resultados de busqueda
Errores comunes
Bloquear CSS y JavaScript
Disallow: /assets/
Si sus archivos CSS y JavaScript estan en /assets/, bloquearlos impide que Googlebot renderice su pagina correctamente.
Confundir Disallow: con noindex
Disallow: detiene el rastreo. noindex (en un encabezado HTTP o etiqueta meta) detiene la indexacion. Son cosas diferentes.
Disallow vacio = Permitir todo
User-agent: *
Disallow:
Esto significa "no denegar nada", permite a todos los rastreadores acceder a todo.
Sensibilidad a mayusculas y minusculas
Las URLs en robots.txt distinguen mayusculas de minusculas. Disallow: /Privado/ no bloquea /privado/.
Un robots.txt minimo correcto
Para un sitio web estandar sin paginas que ocultar:
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
Esto permite explicitamente a todos los rastreadores y los apunta a su sitemap.
Validar su robots.txt
Use el verificador de robots.txt de Google Search Console para validar su archivo. El generador de robots.txt de este sitio construye un robots.txt valido a partir de una interfaz de formulario.
Resumen
robots.txt usa directivas User-agent:, Disallow: y Allow: para guiar (no imponer) el comportamiento de los rastreadores. Los errores comunes incluyen bloquear activos, confundir disallow con noindex y usar rutas con comodines incorrectamente. Siempre validar antes de desplegar.