# Solución de problemas

> Qué hacer cuando el WAF bloquea una petición legítima, un acceso a WordPress, una subida grande o a un socio, y cómo saber qué regla lo hizo.

## Se bloqueó una petición legítima

1. Busca la petición en los [eventos de seguridad](https://developers.openwaf.dev/es/analytics/security-events/): filtra por IP, ruta o estado 403. El evento enseña `rule_name` y `rule_id`.
2. Si es una regla del WAF (un identificador de CRS como `942100` o uno de OpenWAF entre 10000 y 19999), añade una [excepción del WAF](https://developers.openwaf.dev/es/waf/waf-exceptions/) para ese `rule_id` en esa ruta.
3. Si es un escudo (1001–1008), añade una excepción con el identificador del escudo; una excepción con `rule_id` 0 no apaga los escudos.
4. Mientras lo investigas, puedes poner solo ese nombre en modo solo observar con los [ajustes por nombre](https://developers.openwaf.dev/es/rules/per-name-settings/).

## Se bloquea la administración o el acceso de WordPress

La regla 10002 de OpenWAF bloquea `/wp-login.php`, `/wp-admin`, `/wp-includes`, `/wp-content/uploads` y `/xmlrpc.php` en los sitios que no declaran WordPress. Pon `stack=wordpress` en ese nombre (**Seguridad → Firewall → Aplicación → WordPress**). `/xmlrpc.php` sigue bloqueado por el escudo de WordPress (1001); añade una excepción para 1001 en `/xmlrpc.php` si de verdad lo necesitas.

## Las subidas o los cuerpos JSON grandes reciben 403 o 413

- `413` antes que nada: el cuerpo supera `max_body_mb`. Súbelo para ese nombre.
- `403` con la regla `10101`: el WAF inspecciona hasta 1 MiB del cuerpo de una petición y bloquea los cuerpos cuyo contenido no pudo inspeccionar. Si la ruta recibe de forma legítima cuerpos mayores, añade una excepción del WAF para el `rule_id` `10101` en esa ruta exacta: el cuerpo se reenvía entonces con solo su primera parte inspeccionada.
- `413` de un escudo con un cuerpo JSON, GraphQL o de endpoint de IA mayor de 1 MiB: la misma excepción de la regla `10101` en esa ruta lo deja pasar.
- `403` con la regla `10102`: la petición tiene más de 4000 argumentos, así que no se pudo inspeccionar entera.

## Se bloquea a un socio o a un servicio de monitorización

Si el evento es `Feed Block`, la dirección está en una [lista de amenazas](https://developers.openwaf.dev/es/waf/threat-feeds/): añade una regla por IP `allow` para ella. Si es `Geo Block`, revisa tus reglas por país. Una regla `allow` no se salta los límites de peticiones ni el WAF.

## Los usuarios reciben 429

Busca `rate_rule:<id>`, `Advanced Rate Limit` o `Site Rate Limit` en los eventos. Los visitantes detrás de una misma red comparten IP: sube el límite, pasa la regla a `log` para medir o cuenta por `body_field` o `cookie`. Consulta [Límites de peticiones](https://developers.openwaf.dev/es/waf/rate-limiting/#per-node-divisor).

## Mi aplicación no puede leer una cookie

El borde añade `HttpOnly`, `Secure` y `SameSite=Lax` a las cookies que no los llevan. Consulta [Cabeceras de respuesta](https://developers.openwaf.dev/es/waf/responses/#response-headers).

## Los cambios no parecen aplicarse

Cada cambio es una versión nueva que cada nodo de borde aplica en torno a un minuto. Revisa **Cambios → Propagación** u `openwaf-cloud ctl zones propagation example.com`, y la [configuración efectiva](https://developers.openwaf.dev/es/rules/effective-config/) del nombre.
