CF _headers & _redirects
Cloudflare Pages et mise en réseau Edge

Générateur _headers & _redirects Cloudflare Pages & Workers

Guide technique et aide-mémoire de syntaxe pour configurer les fichiers _headers et _redirects de Cloudflare Pages, stratégies de sécurité et réécritures edge.

Confidentialité 100% côté client
Zéro transmission au serveur
Préréglages :

Règles d'En-têtes par Chemin

3 Portées
Modèle de chemin :
Injection rapide :
:
:
:
:
:
:
:

Règles de Redirection URL

3 Règles
→
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
Chemins Mappés
3 Chemins actifs

Correspond aux modèles génériques dans les dossiers racine et statiques.

Directives Totales
12 En-têtes + 3 Redirections

Synthétisé dans des fichiers plats de configuration de périphérie.

Niveau de Sécurité
A+ (100/100)

Évalue HSTS, CSP, X-Frame-Options et les redirections circulaires.

Traitement 100% Côté Client & Confidentiel

Toute la compilation des en-têtes, la génération CSP et l'analyse syntaxique s'exécutent dans votre navigateur sans transfert réseau.

Conformité Spécification Cloudflare Edge

Respect rigoureux des formats _headers et _redirects de Cloudflare Pages, y compris les splats (:splat) et règles forcées (!).

Déploiement Cloud Multi-Format

Exportez en un clic vers les fichiers Pages, le code TypeScript Cloudflare Workers ou la configuration Next.js next.config.js.

Référence technique et guide d'architecture

Référence Développeur Cloudflare Headers et Redirects — Guide de référence

Guide technique et aide-mémoire de syntaxe pour configurer les fichiers _headers et _redirects de Cloudflare Pages, stratégies de sécurité et réécritures edge.

Paramètres clés et contrôles

sourcestring

Modèle de chemin de requête pour _redirects, prenant en charge les caractères génériques (*), splats (:splat) et paramètres nommés (:slug).

Par défaut : /*
targetstring

URL ou chemin relatif de destination pour la réécriture ou redirection, recevant les valeurs des splats ou jetons capturés.

Par défaut : /:splat
status301 | 302 | 307 | 308 | 200

Code de statut HTTP renvoyé par l'edge Cloudflare ; 200 déclenche une réécriture interne tandis que 301 et 308 réalisent des redirections permanentes.

Par défaut : 301
forceboolean

Si activé, force l'exécution de la redirection (format 200! ou 301!) même lorsqu'un fichier statique existe au chemin source demandé.

Par défaut : false
pathstring

Préfixe de chemin ou motif glob dans _headers définissant quelles requêtes clientes reçoivent les en-têtes HTTP spécifiés.

Par défaut : /*

Conseils de pro et bonnes practices

Forcer la Réécriture SPA

Lors de la configuration d'un repli SPA (/* /index.html 200), ajoutez ! (200!) pour forcer la réécriture interne même si un fichier statique existe à l'emplacement demandé.

Respecter les Limites Pages

Cloudflare Pages impose une limite stricte de 100 règles dans _headers et 2 000 dans _redirects. Regroupez vos en-têtes avec /static/* pour éviter tout tronquage silencieux.

Exploiter les Jetons Splat

L'instruction /* /v2/:splat 301 transfère le chemin capturé directement vers la destination cible, optimisant le routage sans alourdir la table de redirection.

Pièges courants et dépannage

Un fichier statique bloque la réécriture 200

Cloudflare Pages distribue les fichiers statiques physiques avant d'évaluer les redirections. Définissez force: true ou ajoutez un point d'exclamation au statut (ex: 200!) dans _redirects pour surpasser les fichiers statiques.

En-têtes tronqués au-delà de 100 règles

Cloudflare Pages ignore silencieusement les déclarations dépassant 100 règles dans _headers. Regroupez les en-têtes de sécurité (HSTS, CSP) sous /* et les ressources statiques sous /assets/*.

Foire aux questions (FAQ)

Où doivent être situés les fichiers _headers et _redirects dans le projet ?▼

Les deux fichiers doivent impérativement être placés dans le répertoire de sortie de build (répertoire de publication) déployé sur Cloudflare Pages (tel que dist/, out/ ou build/). S'ils restent à la racine du dépôt, ils ne seront pas intégrés au déploiement.

Quelle est la différence opérationnelle entre une redirection 301 et une réécriture 200 ?▼

Une redirection 301 renvoie un code HTTP 301 ordonnant au navigateur de charger la nouvelle URL, modifiant la barre d'adresse. Un statut 200 effectue une réécriture interne : Cloudflare sert le contenu cible en conservant l'URL d'origine dans la barre d'adresse, ce qui est indispensable pour les applications monopages (SPA).

Comment Cloudflare gère-t-il les en-têtes conflictuels pour un même chemin ?▼

Cloudflare Pages évalue _headers de haut en bas. Les règles applicables sont fusionnées ; si un même en-tête est défini plusieurs fois sur des chemins correspondants, la dernière valeur déclarée dans le fichier l'emporte.

Cloudflare Pages gère-t-il les expressions régulières (regex) dans _redirects ?▼

Non, le fichier _redirects ne supporte pas les expressions régulières complètes. La syntaxe repose sur les préfixes de chemin, jokers (*), splats (:splat) et paramètres nommés (:id). Pour un routage complexe par regex, utilisez Cloudflare Workers ou Pages Functions.

Outils et utilitaires connexes

Tous les outils →