Comprendre le mécanisme
no-cache ne signifie pas une interdiction générale de stockage : la réutilisation demande une validation selon les règles applicables. no-store demande de ne pas stocker le message dans le périmètre prévu. private indique qu’une réponse n’est pas destinée à un cache partagé. Ces directives répondent à des questions différentes ; les combiner doit traduire un besoin, pas une liste de mots supposés sûrs.
Raisonner et vérifier
Une directive ne garantit pas l’effacement d’une copie antérieure ni le comportement de tout système externe qui aurait déjà enregistré les données. Réduisez les données sensibles et testez le navigateur ainsi que les intermédiaires sous votre contrôle. Pour une page personnelle, choisissez une politique explicite et vérifiez l’absence de cache applicatif transversal. Documentez les besoins de navigation arrière et de travail hors ligne.
No-cache
no-cache demande une validation avant réutilisation selon le contrat. Stockage et réutilisation sont des décisions distinctes. Le stockage peut exister, mais une validation est requise avant réutilisation selon la sémantique applicable. Ne traduisez pas cette directive par aucune copie conservée : ce serait la propriété d’une autre instruction.
Understand this common mistake
no-cache interdit tout stockage.
Stockage et réutilisation sont des décisions distinctes.
No-store
no-store demande de ne pas stocker le message concerné. Cette directive ne promet pas un effacement universel rétroactif. Cette directive demande de ne pas stocker le message concerné. Elle ne constitue pas un effacement rétroactif universel de toutes les copies, historiques ou captures déjà créées ailleurs.
Understand this common mistake
no-store efface toutes les copies antérieures et historiques.
Cette directive ne promet pas un effacement universel rétroactif.
Private
private interdit le stockage par un cache partagé selon sa sémantique. La restriction de stockage n’est pas une preuve d’identité. Un cache partagé ne doit pas stocker selon cette sémantique, tandis qu’un cache privé peut encore être concerné par les autres règles. Vérifiez la différence entre navigateur et CDN.
Understand this common mistake
private authentifie automatiquement le lecteur.
La restriction de stockage n’est pas une preuve d’identité.
Public
public peut permettre un cache partagé selon les autres règles. L’auteur doit choisir une politique adaptée aux données. Une réponse marquée public peut être admissible à un cache partagé selon les autres conditions. Révisez immédiatement ce choix s’il porte des données personnelles et recherchez les copies déjà exposées.
Understand this common mistake
public signifie que le contenu ne contient nécessairement aucun secret.
L’auteur doit choisir une politique adaptée aux données.
Max-age
max-age définit une durée de fraîcheur. Le cache et l’identité ont des cycles distincts. Cette durée règle la fraîcheur, pas la sensibilité de la donnée. Une réponse personnelle ne devient pas partageable simplement parce que son max-age est court et que son contenu paraît récent.
Understand this common mistake
max-age définit la durée de validité du compte utilisateur.
Le cache et l’identité ont des cycles distincts.
S-maxage
s-maxage vise les caches partagés selon son contrat. La directive n’a pas ce rôle d’authentification. Cette directive cible les caches partagés dans son contrat. Comparez son effet avec max-age et les autres directives avant de conclure à une durée identique côté navigateur et côté intermédiaire.
Understand this common mistake
s-maxage définit seulement le mot de passe du navigateur.
La directive n’a pas ce rôle d’authentification.
Personnalisation
Une politique doit être cohérente avec les données personnalisées. La durée ne supprime pas la frontière d’identité. Identifiez les données liées à une identité avant de sélectionner la politique. Ne laissez pas un middleware global ajouter public sur un compte utilisateur simplement parce que le reste du site est public.
Understand this common mistake
Une réponse privée devient partageable sans risque avec un TTL court.
La durée ne supprime pas la frontière d’identité.
Combinaison
Des directives doivent être interprétées ensemble. Les autres paramètres peuvent modifier les conditions. Interprétez les directives ensemble et selon le type de cache. Une vérification qui cherche seulement un mot dans le header peut manquer une combinaison contradictoire ou une directive plus spécifique.
Understand this common mistake
Lire un seul mot suffit à connaître toute politique de cache.
Les autres paramètres peuvent modifier les conditions.
Valeur déployée
Les champs réellement servis doivent être vérifiés. Le cache utilise le message reçu. Inspectez la réponse reçue après proxy et CDN. Une route peut être transformée par une règle d’hébergement ; le fichier de configuration de l’application ne suffit pas à prouver la politique servie.
Understand this common mistake
Une intention dans un commentaire impose la politique HTTP.
Le cache utilise le message reçu.
Autorisation
L’autorisation doit rester correcte indépendamment du cache. Le protocole de cache ne décide pas de la propriété métier. Même sans cache partagé, le serveur doit refuser un utilisateur tiers. La politique de stockage ne remplace pas la vérification du droit sur chaque ressource au moment de la demande.
Understand this common mistake
Cache-Control remplace les permissions sur l’objet.
Le protocole de cache ne décide pas de la propriété métier.
Atelier guidé : lire, expliquer et vérifier le code
Cache-Control: no-cache
ETag: "lab-v1" La réponse associe no-cache et un ETag. Elle peut donc permettre un stockage suivi d’une validation avant réutilisation selon le contrat. Expliquez la différence avec no-store et private, puis observez un parcours de revalidation réel au lieu d’interpréter le nom de directive littéralement.
Un validateur de contenu n’est pas une identité. no-cache ne signifie pas no-store. Cette interdiction correspond à une autre directive. La politique ne promet pas une purge universelle rétroactive.
Travail pratique : Comparez un document de laboratoire servi avec no-cache puis no-store. Examinez validation réseau et présence éventuelle de stockage.
Critères de correction : Utilisez des données fictives et un cache contrôlé. Testez rechargement, retour de navigation et changement d’identité. Décrivez les observations sans promettre une suppression universelle de toutes les copies.
Worked example
Cache-Control: private, no-storeCette politique convient à certains contenus personnels, mais son adéquation dépend du contrat de la page et des mécanismes qui la servent.
Practical exercise
Comparez un document de laboratoire servi avec no-cache puis no-store. Examinez validation réseau et présence éventuelle de stockage.
View a suggested solution
Utilisez des données fictives et un cache contrôlé. Testez rechargement, retour de navigation et changement d’identité. Décrivez les observations sans promettre une suppression universelle de toutes les copies.
Verification checklist
- no-cache n’est pas no-store.
- private n’est pas une authentification.
- Pas de promesse d’effacement rétroactif.
Knowledge check
Related lesson: 28. Cache-Control : no-cache, no-store et private ↗Module validation
101 questions, local practice target of 75%. Suggested duration of 150 minutes, with no enforced deadline. Questions and choices are shuffled; corrections appear after submission. The quick lesson check and the final course exam remain separate exercises.
Start or resume the 101 questions →This records your own progress and does not certify mastery. Complete the exercise before moving on.
