CF _headers & _redirects
Cloudflare Pages y redes de borde

Generador de _headers y _redirects para Cloudflare Pages y Workers

Referencia técnica y chuleta de sintaxis para configurar reglas _headers y _redirects de Cloudflare Pages, directivas de seguridad y reescrituras edge.

Privacidad 100% del lado del cliente
Cero transmisión al servidor
Preajustes:

Rutas de Encabezados

3 Ámbitos
Patrón de ruta:
Inyección rápida:
:
:
:
:
:
:
:

Reglas de Redirección URL

3 Reglas
→
Condition:
→
Condition:
→
Condition:
# Cloudflare Pages _headers configuration
# Generated with ToolsAA (https://toolsaa.com)
# Docs: https://developers.cloudflare.com/pages/configuration/headers/

# Global root security headers
/*
  Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
  X-Frame-Options: DENY
  X-Content-Type-Options: nosniff
  Referrer-Policy: strict-origin-when-cross-origin
  Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=()
  Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://challenges.cloudflare.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:; connect-src 'self' https:; frame-ancestors 'none'; base-uri 'self'; form-action 'self';
  Cross-Origin-Opener-Policy: same-origin

# Long-term immutable static caching
/assets/*
  Cache-Control: public, max-age=31536000, immutable

# REST API CORS policies
/api/*
  Access-Control-Allow-Origin: *
  Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
  Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With
  Cache-Control: no-store, no-cache, must-revalidate
Rutas Activas
3 Rutas activas

Coincide con patrones comodín en carpetas raíz y estáticas.

Directivas Totales
12 Encabezados + 3 Redirecciones

Sintetizado en archivos planos de configuración de borde.

Grado de Seguridad
A+ (100/100)

Evalúa HSTS, CSP, X-Frame-Options y redirecciones circulares.

Procesamiento 100% Privado en Cliente

Toda la compilación de encabezados, síntesis de CSP y análisis de redirecciones se ejecuta en su navegador local sin enviar datos a servidores.

Cumplimiento Estricto de Especificaciones Cloudflare

Compatibilidad total con las especificaciones de Cloudflare Pages _headers y _redirects, con soporte para splats (:splat) y forzado (!).

Despliegue Multi-Nube Instantáneo

Exporte archivos planos para Pages, scripts Cloudflare Workers en TypeScript o reglas para Next.js con un solo clic.

Referencia técnica y guía de arquitectura

Referencia de Desarrollador Cloudflare Headers y Redirects — Guía de referencia

Referencia técnica y chuleta de sintaxis para configurar reglas _headers y _redirects de Cloudflare Pages, directivas de seguridad y reescrituras edge.

Parámetros clave y controles

sourcestring

Patrón de ruta de solicitud entrante para _redirects, compatible con comodines (*), splats (:splat) y marcadores de posición (:slug).

Por defecto: /*
targetstring

URL de destino o ruta relativa a la raíz para la reescritura o redirección, que recibe los valores de splats o tokens coincidentes.

Por defecto: /:splat
status301 | 302 | 307 | 308 | 200

Código de estado HTTP devuelto por el edge de Cloudflare; 200 ejecuta una reescritura interna y 301/308 realizan redirecciones permanentes.

Por defecto: 301
forceboolean

Fuerza la ejecución de la regla de redirección (formato 200! o 301!) incluso si existe un archivo estático idéntico en la ruta de origen.

Por defecto: false
pathstring

Prefijo de ruta o patrón glob en _headers que define qué solicitudes reciben las directivas de encabezado HTTP asociadas.

Por defecto: /*

Consejos profesionales y mejores prácticas

Aplicar Force en Rutas SPA

Al configurar reglas de reserva para SPA (/* /index.html 200), use 200! para forzar la reescritura interna incluso si existe un archivo estático en la ruta solicitada.

Optimizar Límites de Reglas

Cloudflare Pages impone un límite estricto de 100 reglas en _headers y 2.000 en _redirects. Agrupe directivas con patrones comodín como /static/* para evitar truncamientos.

Usar Tokens Splat en Redirección

La sintaxis /* /v2/:splat 301 transfiere automáticamente los segmentos capturados al nuevo destino sin requerir reglas complejas adicionales.

Errores comunes y solución de problemas

Archivos estáticos impiden la ejecución de la reescritura 200

Cloudflare Pages entrega archivos estáticos existentes antes de evaluar las reglas de redirección. Configure force: true o añada un signo de exclamación al código de estado (por ejemplo, 200!) en _redirects para anular el archivo estático.

Encabezados truncados al superar el límite de 100 reglas

Cloudflare Pages descarta silenciosamente las declaraciones de encabezados que exceden las 100 reglas en _headers. Agrupe encabezados de seguridad comunes (HSTS, CSP) bajo /* y recursos estáticos bajo /assets/*.

Preguntas frecuentes (FAQ)

¿Dónde deben ubicarse los archivos _headers y _redirects en la compilación?▼

Ambos archivos deben colocarse en el directorio de salida de compilación (directorio de publicación) desplegado en Cloudflare Pages (como dist/, out/ o build/). Si se colocan solo en la raíz del repositorio, no se incluirán en el despliegue final.

¿Cuál es la diferencia operativa entre una redirección 301 y una reescritura 200?▼

Una redirección 301 emite un código HTTP 301 ordenando al navegador solicitar la URL de destino, modificando la barra de direcciones. Un código 200 realiza una reescritura interna donde Cloudflare entrega el contenido de destino conservando la URL original en el navegador, esencial para aplicaciones SPA.

¿Cómo resuelve Cloudflare reglas de encabezados contradictorias en una misma ruta?▼

Cloudflare Pages procesa _headers de arriba abajo. Las reglas coincidentes se combinan; si un mismo nombre de encabezado se define varias veces para rutas coincidentes, prevalece el valor definido en la última posición del archivo.

¿Admite Cloudflare Pages expresiones regulares (regex) en _redirects?▼

No, el archivo _redirects no admite expresiones regulares completas. Admite prefijos de ruta, comodines (*), splats (:splat) y marcadores con nombre (:id). Para lógica compleja basada en regex, utilice Cloudflare Workers o Pages Functions.

Herramientas y utilidades relacionadas

Todas las herramientas →