Constructeur d'en-tête Cache-Control
Construisez un en-tête Cache-Control HTTP valide en sélectionnant des directives. La valeur obtenue est prête à copier dans une config serveur, .htaccess ou une règle CDN.
Presets rapides
| Preset | Valeur | Cas d'usage |
|---|---|---|
| Asset immuable | public, max-age=31536000, immutable | JS/CSS/images avec fingerprint (cache définitif) |
| Page HTML | no-cache | Pages dynamiques, toujours revalider |
| API / dynamique | private, no-store | Réponses personnalisées (données utilisateur, tokens) |
| Sans cache | no-store, no-cache, must-revalidate | Fraîcheur maximale imposée |
Explication des directives clés
- public: la réponse peut être mise en cache par n'importe quel cache (navigateur, CDN, proxy)
- private: seul le navigateur peut mettre en cache ; les CDN et caches partagés ne doivent pas
- no-cache: la copie en cache doit être revalidée à chaque requête (ne signifie PAS "pas de cache")
- no-store: ne jamais stocker sur disque. Pour les données sensibles.
- max-age=N: la réponse est fraîche pendant N secondes ; le navigateur la sert directement
- immutable: indique au navigateur que la ressource ne changera pas pendant max-age
- must-revalidate: une fois périmée, la réponse ne peut pas être servie sans revalidation
Stratégie de mise en cache
La stratégie la plus efficace combine le cache longue durée pour les assets avec fingerprint (immutable) et l'absence de cache pour les documents HTML. Ainsi, déployer une nouvelle version avec de nouveaux noms de fichiers force le navigateur à récupérer les nouveaux assets, tandis que le HTML est toujours frais.