User-agent: * Allow: / Disallow: /inicio Disallow: /admin Disallow: /bienvenida Disallow: /primera-alerta Disallow: /alertas$ Disallow: /alertas/ Disallow: /alerta/ Disallow: /calendario Disallow: /clientes Disallow: /entradas Disallow: /ajustes Disallow: /pagos Disallow: /invitacion Disallow: /baja Disallow: /login Disallow: /oauth Disallow: /promo Disallow: /demo # /empresas (plural) is the PRIVATE company explorer — distinct from the public # /empresa/:nif ficha below. Disallow: /empresas$ Disallow: /empresas/ # /categorias is the private "Licitaciones" product tab (ProtectedRoute). It # rewrites to _spa-shell.html, which keeps the template's "index, follow" — the # noindex only lands after React hydrates. Every other private route is listed # here; this one was the gap. Disallow: /categorias$ Disallow: /categorias/ # /empresa/:nif is crawlable: a curated whitelist (scripts/data/top-empresas.json) # ships as prerendered, indexable static pages; every other /empresa URL is # served a noindex shell (firebase.json → _spa-shell-empresa.html). # AI crawlers: explicitly welcome User-agent: GPTBot Allow: / User-agent: ChatGPT-User Allow: / User-agent: OAI-SearchBot Allow: / User-agent: ClaudeBot Allow: / User-agent: PerplexityBot Allow: / User-agent: Google-Extended Allow: / User-agent: Applebot-Extended Allow: / User-agent: CCBot Allow: / # Claude and Perplexity user/search agents. Without their own group they fall # through to the wildcard (also allowed), but naming them keeps the policy # explicit: ClaudeBot only covers training. User-agent: Claude-SearchBot Allow: / User-agent: Claude-User Allow: / User-agent: Perplexity-User Allow: / Sitemap: https://boletinclaro.es/sitemap.xml