Analyseur d'en-têtes de cache

Analysez les en-têtes de mise en cache HTTP pour n'importe quelle URL. Inspectez Cache-Control, Expires, ETag, Last-Modified, Vary, Age, et les signaux de cache CDN courants pour comprendre le comportement navigateur vs cache partagé. Inclut le suivi des redirections, la vue brute des en-têtes, le filtrage, les problèmes identifiés, et l'export JSON/PDF.

Loading…

À propos Analyseur d'En-têtes de Cache

Collez une URL et comprenez instantanément comment elle est mise en cache : directives navigateur, cache partagé CDN/proxy (s-maxage, contrôles substituts), validateurs (ETag/Last-Modified), et modèles de revalidation (stale-while-revalidate, stale-if-error). Utilisez-le pour déboguer les performances, empêcher la mise en cache accidentelle du HTML, et vérifier les politiques de cache des ressources statiques.

Fonctionnalités

  • Audit de cache basé sur l'URL avec une fiche de score claire + problèmes identifiés (concentré sur les en-têtes de cache/performance).
  • Suit les redirections (jusqu'à 10) pour voir où les règles de cache s'appliquent réellement.
  • Vue brute des en-têtes pour une transparence totale (ce que le serveur/CDN a réellement renvoyé).
  • Analyse de cache mise en avant : directives Cache-Control, Expires/Pragma, et conflits.
  • Vérifications des validateurs : détection d'ETag et Last-Modified (pour les requêtes conditionnelles & revalidation).
  • Analyse Vary pour détecter les comportements Vary manquants ou risqués (surtout pour le contenu personnalisé).
  • Détection des signaux CDN : Age, Via, CF-Cache-Status, X-Cache, en-têtes de style Fastly/Akamai/CloudFront.
  • Filtres & mode « seulement les problèmes » pour se concentrer rapidement sur les problèmes actionnables.
  • Export des résultats en rapports JSON et PDF (idéal pour les audits et livrables clients).
  • Sondage HEAD d'abord (repli sur GET) pour minimiser la bande passante tout en restant compatible.

🧭 Comment utiliser for cache-headers-analyzer

1

Entrez l'URL

Collez l'URL complète que vous souhaitez auditer (par ex., [https://example.com/static/app.css](https://example.com/static/app.css)).

2

Choisissez le comportement de la requête

Gardez « Essayer HEAD d'abord (repli sur GET) » activé pour des vérifications rapides. Activez « Suivre les redirections » si l'URL peut rediriger (HTTP→HTTPS, www, CDN, etc.).

3

Choisissez un focus d'analyse

Utilisez « Auto (recommandé) » pour une vue équilibrée. Passez à « Mise en cache navigateur », « Mise en cache CDN / proxy », ou « Mise en cache API » pour prioriser les problèmes les plus pertinents pour votre point de terminaison.

4

Examinez les problèmes et catégories d'en-têtes

Inspectez d'abord le score/les problèmes, puis explorez les directives de cache, les validateurs (ETag/Last-Modified), l'analyse Vary, et les signaux CDN (Age, en-têtes d'état de cache). Activez « Afficher les en-têtes bruts » si vous avez besoin de la réponse complète.

5

Exportez un rapport

Téléchargez un rapport JSON pour l'automatisation ou un rapport PDF pour les audits et le partage avec les collègues/clients.

Spécifications techniques

Modèle de requête

Cet outil effectue une inspection des en-têtes d'URL avec suivi optionnel des redirections. Il tente d'abord une requête HEAD (si activé) et revient à GET si nécessaire.

ParamètreComportementPar défaut
Essayer HEAD d'abord (repli sur GET)Utilise HEAD pour récupérer rapidement les en-têtes ; bascule sur GET si HEAD n'est pas supporté ou insuffisantActivé
Suivre les redirectionsSuit la chaîne de redirections pour analyser le comportement de mise en cache finalActivé
Redirections maxLimite de redirections pour éviter les boucles infinies10 (plage 0–20)
Délai d'attenteLimite de délai d'attente de la requête15000 ms
Agent utilisateurIdentifie l'agent utilisateur de la requêteEncode64Bot/1.0 (+[https://encode64.com](https://encode64.com))
Réseaux privésBloque l'accès aux plages de réseaux privés pour la sécuritéDésactivé (réseaux privés non autorisés)

En-têtes et signaux analysés

L'analyseur se concentre sur la sémantique de mise en cache (navigateurs et caches partagés) ainsi que sur les signaux courants des CDN en périphérie.

CatégorieExemples
Directives de cacheCache-Control, Expires, Pragma, Surrogate-Control, CDN-Cache-Control
ValidateursETag, Last-Modified (utilisés pour les requêtes conditionnelles / revalidation)
Comportement du cache partagés-maxage, stale-while-revalidate, stale-if-error (lorsqu'ils sont présents dans Cache-Control)
Comportement VaryVary (variations de clé de cache et sécurité de personnalisation)
Signaux CDN/proxyAge, Via, CF-Cache-Status, X-Cache, X-Cache-Hits, Server-Timing et autres indicateurs de périphérie
Certains en-têtes CDN sont spécifiques aux fournisseurs ; leur présence et leur signification peuvent varier selon le fournisseur et la configuration.

Heuristiques (ce qui déclenche les avertissements)

Les conclusions sont dérivées d'heuristiques pratiques de mise en cache pour aider à repérer les politiques de cache manquantes, contradictoires ou faibles.

HeuristiqueCe qu'elle vérifie
Cache-Control manquantAvertit lorsque Cache-Control est absent
Directives conflictuellesAvertit lorsque les directives semblent incohérentes (ex : intentions de mise en cache mélangées)
Validateurs manquantsAvertit lorsque les réponses pouvant être mises en cache n'ont pas d'ETag/Last-Modified
Validateurs faiblesSignale les modèles de validateurs faibles le cas échéant
Risque VaryAvertit lorsque Vary semble manquer alors qu'une variation est probablement nécessaire
Incohérence Pragma no-cacheAvertit lorsque Pragma: no-cache apparaît sans Cache-Control correspondant

Classification (statique vs HTML vs API)

L'analyseur peut déduire l'intention du type de contenu à partir du chemin de l'URL pour adapter les recommandations de mise en cache.

ClasseModèles de chemin (exemples)
Ressource statique.css, .js, .png, .svg, .woff2, etc.
HTML.html, .htm
APIChemins commençant par /api/ ou se terminant par .json
Si votre URL ne correspond pas à ces modèles, utilisez « Focus de l'analyseur » pour orienter les recommandations.

Ligne de commande

Utilisez ces extraits CLI pour inspecter les en-têtes de cache localement. Ils ne remplacent pas les résultats/score de cet outil, mais ils vous aident à reproduire les résultats rapidement.

macOS / Linux

Récupérer les en-têtes avec une requête HEAD

curl -I [https://example.com/static/app.css](https://example.com/static/app.css)

Vérifie Cache-Control, Expires, ETag, Last-Modified, Vary et les signaux CDN sans télécharger le corps.

Suivre les redirections et afficher les en-têtes

curl -IL [https://example.com/](https://example.com/)

Affiche la chaîne de redirection pour vérifier où les directives de cache changent.

Run

Windows (PowerShell)

Obtenir les en-têtes de réponse

(Invoke-WebRequest -Uri [https://example.com/static/app.css](https://example.com/static/app.css) -Method Head).Headers

Liste les en-têtes incluant Cache-Control, ETag, Last-Modified et les en-têtes CDN du fournisseur lorsqu'ils sont présents.

Pour les ressources statiques avec des noms de fichiers hachés (app.abc123.css), privilégiez une mise en cache de longue durée avec immutable. Pour le HTML, soyez conservateur pour éviter de servir des pages personnalisées obsolètes.

Cas d'utilisation

Audit de mise en cache des ressources statiques (CSS/JS/images/polices)

Vérifiez que les ressources avec empreinte sont mises en cache pour une longue durée et peuvent être efficacement revalidées si nécessaire.

  • Confirmer que Cache-Control inclut un max-age long et (le cas échéant) immutable
  • S'assurer que des validateurs existent (ETag ou Last-Modified) pour une revalidation sûre
  • Vérifier les indicateurs de succès de cache CDN (Age, CF-Cache-Status, X-Cache)
Cache-Control: public, max-age=31536000, immutable
ETag: "686897696a7c876b7e"
Vary: Accept-Encoding

Empêcher la mise en cache accidentelle des pages HTML

Détectez les cas où les pages HTML sont mises en cache de manière trop agressive au niveau du CDN ou du navigateur, ce qui peut rompre les flux de connexion, la personnalisation et la cohérence du rendu SEO.

  • Détecter un Cache-Control trop permissif sur le HTML
  • Identifier l'absence de Vary lorsque le contenu diffère selon les cookies, l'authentification ou la langue
  • Confirmer les modèles de revalidation sûrs

Revue de la mise en cache des points de terminaison d'API

Comprenez si les caches partagés sont activés pour les réponses d'API et si votre API peut être mise en cache de manière sûre.

  • Détecter la mise en cache partagée via s-maxage
  • Repérer les stratégies stale-while-revalidate / stale-if-error
  • Signaler l'absence de validateurs lorsque les réponses d'API sont mises en cache

Déboguer le comportement du CDN à travers les redirections

De nombreux sites redirigent (HTTP→HTTPS, apex→www, redirections de langue). Cet outil aide à garantir que les politiques de mise en cache restent cohérentes du premier saut à la réponse finale.

  • Vérifier les en-têtes à chaque saut et sur l'URL finale
  • Repérer les changements d'en-têtes de cache introduits par des règles de bord ou des réécritures d'origine

❓ Frequently Asked Questions

Quels en-têtes cet outil analyse-t-il pour la mise en cache ?

Il se concentre sur la sémantique et les signaux de cache : Cache-Control, Expires, Pragma, Age, ETag, Last-Modified, Vary, ainsi que les indicateurs CDN/proxy courants tels que Via, CF-Cache-Status, X-Cache et les en-têtes de bord associés.

Pourquoi vois-je des résultats de mise en cache différents entre le navigateur et le CDN ?

Les navigateurs suivent les directives de cache de bout en bout (Cache-Control, Expires) tandis que les CDN et les proxys peuvent appliquer des règles de cache partagé (s-maxage, Surrogate-Control) et des politiques de bord. Une réponse peut être mise en cache au bord mais de courte durée dans le navigateur, ou l'inverse.

À quoi servent ETag et Last-Modified ?

Ce sont des validateurs pour les requêtes conditionnelles. Avec ETag (If-None-Match) ou Last-Modified (If-Modified-Since), les clients et les caches peuvent revalider les ressources et recevoir un 304 Not Modified léger lorsque le contenu n'a pas changé.

Dois-je mettre en cache les pages HTML pendant longtemps ?

Généralement non. Le HTML change souvent fréquemment et peut être personnalisé. Une mise en cache agressive peut servir du contenu obsolète ou erroné. Privilégiez une mise en cache courte avec revalidation, et utilisez des règles Vary correctes lorsque le contenu dépend d'en-têtes/cookies.

Qu'est-ce que Vary et pourquoi est-ce important ?

Vary indique aux caches quels en-têtes de requête affectent la réponse (par ex., Accept-Encoding). L'absence ou une mauvaise utilisation de Vary peut amener les caches à servir la mauvaise variante (compressée vs non compressée, variantes de langue, etc.).

Est-il sûr de coller des URL ici ?

L'outil effectue des requêtes côté serveur vers l'URL fournie et bloque les cibles de réseau privé. Utilisez des URL publiques de confiance et évitez de coller des secrets dans la chaîne de requête de l'URL.

Puis-je exporter l'analyse ?

Oui. L'outil prend en charge l'export d'un rapport JSON et d'un rapport PDF afin que vous puissiez partager les résultats ou les joindre à des audits de performance.

Pro Tips

Performance Tip

Si vos ressources sont empreintées (hash dans le nom de fichier), utilisez un max-age long + immutable pour des performances optimales lors des visites répétées.

Security Tip

Si le HTML est personnalisé (cookies/auth), évitez la mise en cache dans les caches partagés, sauf si vous contrôlez entièrement la clé de cache et le comportement Vary.

Performance Tip

Privilégiez les validateurs (ETag ou Last-Modified) sur les ressources pouvant être mises en cache afin que les clients puissent revalider avec un 304 au lieu de retélécharger.

Best Practice

Surveillez les directives conflictuelles comme no-store mélangé à un max-age long ; cela indique généralement une mauvaise configuration.

Best Practice

Lors du débogage des redirections, comparez les en-têtes de cache à chaque étape ; les règles de bordure peuvent modifier la mise en cache entre les redirections et l'URL finale.

CI Tip

Exportez les rapports JSON et conservez-les dans vos artefacts CI/audit de performance pour suivre les régressions dans le temps.

Additional Resources

Other Tools