Cómo arreglé los errores 4xx de Bing cuando Cloudflare bloqueaba mi sitio
Bing reportaba errores 400-499. Bot Fight Mode, Block AI bots y Browser Integrity Check bloqueaban el crawler. Proceso completo de diagnóstico y solución.
El problema
Bing Webmaster Tools no mostraba datos acerca de clicks, impresiones y CTR.

Tampoco indexaba páginas.

Realicé un examen al sitio y reportó errores HTTP 400-499.


Estado:
- 1 página examinada
- 1 error HTTP 400-499
- 0 páginas indexadas
- 0 impresiones
- 0 clics
Google funcionaba perfecto. Bing no podía acceder.
El error específico: "Estas páginas tienen un código de estado http 400-499. Asegura el estado http 200 para mejorar el rendimiento de las páginas de resultados de los motores de búsqueda y ganar tráfico de usuarios."

Diagnóstico: Cloudflare bloqueaba a Bingbot
Revisé los logs de seguridad en Cloudflare (Security → Analytics → Events).

Vi eventos de tipo:

- Managed Challenge
- Block
- Service: Bot Fight Mode
- Service: Managed rules
El problema: Cloudflare estaba bloqueando automáticamente a crawlers, incluido Bingbot.
Qué estaba bloqueando
- Bot Fight Mode (Security → Settings → Bot traffic)
- Desafía automáticamente bots conocidos
- No distingue entre bots buenos (Bingbot, Googlebot) y malos
- Resultado: Bingbot recibía challenges que no podía resolver
- Block AI bots (Security → Settings → Bot traffic)
- Bloquea bots categorizados como "AI training crawlers"
- Bingbot puede estar en esta categoría (Microsoft usa datos de Bing para IA)
- Configuración: "Block on all pages"
- Browser Integrity Check (Security → Settings)
- Verifica headers HTTP para detectar bots maliciosos
- Puede causar problemas con crawlers legítimos
- Capa adicional de verificación que interfería
Qué NO estaba mal
Revisé todo lo demás:
✅ robots.txt — No bloqueaba a Bingbot
User-agent: *
Sitemap: https://cesarbeassuarez.dev/sitemap.xml
Disallow: /ghost/
Disallow: /email/
Disallow: /members/api/comments/counts/
Disallow: /r/
Disallow: /webmentions/receive/
Disallow: /.ghost.analytics/api/
✅ WAF (Web Application Firewall) — Sin reglas custom bloqueando bots
- Custom rules: 0 activas
- Rate limiting rules: 0 activas
- Managed rules: Solo DDoS protection (no afecta crawlers legítimos)
✅ Security Level — Medium (no "I'm Under Attack")
✅ Challenge Passage — 30 minutes (razonable)
✅ IP Access Rules — Sin bloqueos de rangos de IPs de Microsoft
✅ Manage robots.txt — OFF (Cloudflare no sobrescribe mi robots.txt)
El único problema eran las 3 configuraciones de bot blocking.
Solución
Desactivé las 3 configuraciones que bloqueaban a Bingbot.
1. Desactivar Bot Fight Mode
Ubicación: Cloudflare → Security → Settings → Bot traffic
Pasos:
- Ir a Security → Settings
- Buscar "Bot Fight Mode"
- Toggle OFF

Antes: Detect and challenges bot traffic on your domain Después: Desactivado
2. Desactivar Block AI bots
Ubicación: Cloudflare → Security → Settings → Bot traffic
Pasos:
- En la misma sección de Bot traffic
- Buscar "Block AI bots"
- Click en "Configurations"
- Cambiar de "Block on all pages" a "Do not block (allow crawlers)"

Antes: Blocks AI Bots scope: Block on all pages Después: Do not block (off)
3. Desactivar Browser Integrity Check
Ubicación: Cloudflare → Security → Settings
Pasos:
- Scroll hacia abajo en Settings
- Buscar "Browser Integrity Check"
- Toggle OFF

Antes: Evaluate HTTP headers from your visitor's browser for threats Después: Desactivado
Configuración final de Cloudflare
Después de los cambios, esta es la configuración óptima para permitir indexación:
✅ Bot Fight Mode: OFF
✅ Block AI bots: Do not block (off)
✅ Browser Integrity Check: OFF
✅ AI Labyrinth: OFF
✅ Security Level: Medium
✅ Challenge Passage: 30 minutes
✅ WAF Custom rules: 0 (sin bloqueos de bots)
✅ Rate limiting: 0 (sin límites agresivos)
Protecciones que siguen activas (y está bien)
✅ DDoS protection (Network-layer, SSL/TLS, HTTP)
✅ Cloudflare Managed Ruleset
✅ SSL/TLS encryption
Estas protecciones NO afectan a crawlers legítimos. Solo bloquean ataques DDoS reales.
Qué esperar después
Próximas 24-48 horas
- Bingbot volverá a intentar crawlear el sitio
- No encontrará errores 4xx
- Empezará a leer el contenido
Próximos 3-7 días
En Bing Webmaster Tools → Examen de sitios:
- Errores 400-499 bajarán a 0
- Páginas indexadas empezarán a aparecer
- Estado cambiará de "Completado con errores" a "Completado"
Próximos 7-14 días
En Rendimiento de búsqueda:
- Aparecerán primeras impresiones
- Puede haber clics (aunque sean pocos)
- El sitio estará completamente indexado
Resultados update: Error residual de /cdn-cgi/ (normal, no crítico)
Después de desactivar las configuraciones, Bing volvió a crawlear el sitio.
Resultado:


- Antes: 1 página examinada, 1 error
- Después: 23 páginas examinadas, 1 error
El error que queda:

URL: https://cesarbeassuarez.dev/cdn-cgi/l/email-protection
Tipo: HTTP 400-499
¿Qué es /cdn-cgi/?
Es una URL interna de Cloudflare, NO contenido de mi sitio.
Cómo funciona:
- Cloudflare detecta emails en HTML (ej:
[email protected]) - Los ofusca automáticamente para protegerlos de spam bots
- Crea links a
/cdn-cgi/l/email-protection - Cuando un usuario real hace clic, desofusca el email
El problema:
- Bingbot encontró este link en el HTML
- Intentó crawlearlo (porque es un link)
- Cloudflare respondió con 4xx porque NO es una página real
¿Es un problema?
No. Es cosmético.
Por qué:
- Solo afecta a 1 URL interna de Cloudflare
- Las 22 páginas de contenido real se crawlean correctamente
- No impide indexación
- Google probablemente también lo intenta (pero no muestra el error)
No afecta tráfico, recomendación: ignorarlo.
Solución (opcional)
Bloquear /cdn-cgi/ en robots.txt para que bots no lo intenten crawlear.
Opción 1: En Ghost
Settings → Advanced → robots.txt
Agregar: Disallow: /cdn-cgi/
Opción 2: En Cloudflare
Security → Settings → Manage your robots.txt
Agregar: Disallow: /cdn-cgi/
Mi decisión: No hacer nada por ahora.
No es obligatorio. No afecta ranking ni indexación.
Probablemente desaparezca solo cuando Bing re-crawlee y actualice su índice.
Progreso real
El problema principal está resuelto:
Antes:
- ❌ Sitio bloqueado por Cloudflare
- ❌ 0 páginas indexables
Ahora:
- ✅ Bingbot accede sin problemas
- ✅ 22/23 páginas crawleables correctamente
- ⚠️ 1 error en URL interna de Cloudflare (no crítico)
Opcional: Acelerar el proceso
Podés pedirle a Bing que re-crawlee manualmente:

Esto le dice a Bing "intentá ahora" en vez de esperar al próximo ciclo automático.
Errores que cometí (y cómo evitarlos)
1. Asumir que Cloudflare solo bloquea bots maliciosos
Bot Fight Mode suena útil, pero bloquea TODO tipo de bots por defecto.
Si querés ser indexado, no podés tener Bot Fight Mode activo sin configuraciones adicionales.
2. No revisar los logs de seguridad antes
Los eventos de Cloudflare (Security → Analytics → Events) mostraban claramente que estaba bloqueando crawlers.
Debería haber revisado esto antes de buscar el problema en otro lado.
3. Tener múltiples capas de protección innecesarias
Bot Fight Mode + Block AI bots + Browser Integrity Check es overkill para un blog personal.
Una protección sola (como DDoS protection básico) es suficiente.
4. No verificar en Bing Webmaster Tools desde el principio
Google Search Console funcionaba bien, asumí que Bing también.
Error: siempre verificar ambos buscadores, sobre todo después de configurar CDN/seguridad.
Por qué Google funcionaba y Bing no
Google tiene mejor infraestructura para resolver challenges de Cloudflare.
Cloudflare reconoce mejor a Googlebot que a Bingbot.
Resultado: Googlebot pasaba, Bingbot quedaba bloqueado.
No significa que Bing sea peor. Significa que Cloudflare tiene configuraciones más agresivas con bots que no son Google.
Aprendizajes
- Cloudflare es potente, pero opaco
- Las configuraciones por defecto son agresivas
- No todas son necesarias para un blog personal
- Menos es más
- Logs de seguridad son esenciales
- Security → Analytics → Events muestra TODO
- Ahí se ve qué está bloqueando realmente
- No asumir, verificar
- Bot Fight Mode NO es para sitios que quieren indexación
- Está diseñado para proteger apps, no blogs
- Si lo usás, necesitás reglas custom para permitir crawlers
- Mejor desactivarlo directamente
- Verificar Bing además de Google
- Bing tiene ~3-5% del tráfico de búsqueda (pero es tráfico)
- Si Bing no puede indexarte, perdés visitantes
- Configurar Bing Webmaster Tools desde el día 1
- Browser Integrity Check es opcional
- Agrega fricción sin mucho beneficio para blogs
- DDoS protection básico es suficiente
- Solo activarlo si hay ataques reales
Arquitectura actual
[ Usuario ]
↓
[ Navegador ]
↓
[ Cloudflare ] (CDN + Seguridad básica, SIN bot blocking)
↓
[ PikaPods ] (Hosting)
↓
[ Ghost ] (CMS)
↓
[ Contenido ]
Cloudflare ahora solo:
- Acelera el sitio (CDN)
- Protege contra DDoS
- Maneja SSL/TLS
- NO bloquea bots legítimos
Recursos útiles
- Bing Webmaster Tools: https://www.bing.com/webmasters
- Cloudflare Security Analytics: Dashboard → Security → Analytics
- Cloudflare Logs: Security → Analytics → Events (tab)
- Verificar indexación:
- Google:
site:cesarbeassuarez.deven Google - Bing:
site:cesarbeassuarez.deven Bing
- Google:
Conclusión
Bing no podía indexar mi sitio porque Cloudflare lo bloqueaba automáticamente.
Desactivé 3 configuraciones:
- Bot Fight Mode
- Block AI bots
- Browser Integrity Check
Resultado:
- De 1 página examinada → 23 páginas examinadas
- De sitio completamente bloqueado → 22/23 páginas accesibles
- El único error restante es una URL interna de Cloudflare (no crítico)
En 3-7 días debería ver páginas indexadas y en 7-14 días primeras impresiones en búsquedas.
El sitio sigue protegido contra DDoS y ataques reales, pero ya no bloquea crawlers legítimos.
Si tu sitio funciona en Google pero no en Bing, revisá Cloudflare. Probablemente sea lo mismo.
Nota: este post documenta un caso real.
Las configuraciones de Cloudflare cambian con el tiempo.
—
Para explorar:
Si este post te resultó útil, estos pueden interesarte:
Cómo armé este sitio El proceso completo de construcción del blog: Ghost, PikaPods, Cloudflare, DNS, email. Arquitectura y decisiones técnicas.
Por qué construyo en público La filosofía detrás de este blog: aprender en público, documentar errores, construir sobre consumir.