From 6beeb1b708550be0d4a53b272283e17e5e35fe17 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 17:01:30 +0200 Subject: Adding upstream version 2.4.57. Signed-off-by: Daniel Baumann --- docs/manual/mod/mod_cache.html.fr.utf8 | 1187 ++++++++++++++++++++++++++++++++ 1 file changed, 1187 insertions(+) create mode 100644 docs/manual/mod/mod_cache.html.fr.utf8 (limited to 'docs/manual/mod/mod_cache.html.fr.utf8') diff --git a/docs/manual/mod/mod_cache.html.fr.utf8 b/docs/manual/mod/mod_cache.html.fr.utf8 new file mode 100644 index 0000000..f38d24a --- /dev/null +++ b/docs/manual/mod/mod_cache.html.fr.utf8 @@ -0,0 +1,1187 @@ + + + + + +mod_cache - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+ +
+

Module Apache mod_cache

+
+

Langues Disponibles:  en  | + fr  | + ja  | + ko 

+
+ + + +
Description:Filtre de mise en cache HTTP conforme à la RFC 2616
Statut:Extension
Identificateur de Module:cache_module
Fichier Source:mod_cache.c
+

Sommaire

+ +
Ce module doit être utilisé avec précautions + car lorsque la directive CacheQuickHandler est définie à sa + valeur par défaut on, les directives Allow and Deny sont court-circuitées. Vous + ne devez donc pas activer la gestion rapide de la mise en cache pour + un contenu auquel vous souhaitez limiter l'accès en fonction du nom + d'hôte du client, de l'adresse IP ou d'une variable + d'environnement.
+ +

mod_cache implémente un filtre de mise + en cache de contenu HTTP conforme à la RFC 2616, avec + support de la mise en cache des réponses dont le contenu a été + négocié et comportant l'en-tête Vary.

+ +

La mise en cache conforme à la RFC 2616 fournit un mécanisme + permettant de vérifier si un contenu expiré ou dépassé est encore à + jour, et peut apporter un gain de performances significatif si le + serveur original supporte les requêtes + conditionnelles en prenant en compte l'en-tête de requête + HTTP If-None-Match. + Le contenu n'est ainsi régénéré que lorsqu'il a été modifié, et non + lorsqu'il a expiré.

+ +

En tant que filtre, mod_cache peut être placé + en face d'un contenu issu de tout gestionnaire, y compris + des fichiers à accès séquentiel (servis depuis un + disque lent mis en + cache sur un gros disque), la sortie d'un script + CGI ou d'un générateur de contenu + dynamique, ou du contenu mandaté depuis un autre + serveur.

+ +

Dans la configuration par défaut, mod_cache + place le filtre de mise en cache aussi loin que possible dans la + pile de filtres, utilisant le gestionnaire rapide + pour court-circuiter tout traitement par requête lors de l'envoi du + contenu au client. Dans ce mode opératoire, + mod_cache peut être considéré comme un serveur + mandataire avec cache fixé en tête du serveur web, alors qu'il + s'exécute dans ce même serveur web.

+ +

Lorsque le gestionnaire rapide est désactivé via la directive + CacheQuickHandler, il + devient possible d'insérer le filtre CACHE à un + point de la pile de filtres choisi par l'administrateur. Ceci permet + de mettre en cache un contenu avant que celui-ci ne soit + personnalisé par le filtre mod_include, ou + éventuellement compressé par le filtre mod_deflate.

+ +

Dans le mode de fonctionnement normal, mod_cache + peut être contrôlé par les en-têtes Cache-Control + et Pragma + envoyés par un client dans une requête, ou par un serveur dans une + réponse. Dans des circonstances exceptionnelles, + mod_cache peut cependant être configuré pour + outrepasser ces en-têtes et forcer un comportement spécifique au + site, bien qu'un tel comportement sera limité à ce cache seulement, + et n'affectera pas les opérations des autres caches qui peuvent + s'insérer entre le client et le serveur, et ce type de configuration + ne doit donc être utiliser qu'en cas de nécessité absolue.

+ +

La RFC 2616 permet au cache de renvoyer des données périmées + pendant que l'entrée périmée correspondante est mise à jour depuis + le serveur original, et mod_cache supporte cette + fonctionnalité lorsque la directive CacheLock est configurée en + conséquence. De telles réponses comportent un en-tête HTTP Warning + contenant un code de réponse 110. La RFC 2616 permet aussi au cache + de renvoyer des données périmées lorsque la tentative de mise à jour + des données périmées renvoie une erreur 500 ou supérieure, et cette + fonctionnalité est supportée par défaut par + mod_cache. De telles réponses comportent un en-tête HTTP Warning + contenant un code de réponse 111.

+ +

mod_cache requiert les services d'un ou + plusieurs modules de gestion de stockage. La distribution Apache de base + inclut les modules de gestion de stockage suivants :

+
+
mod_cache_disk
+ +
implémente un gestionnaire de stockage sur disque. Les en-têtes + et corps sont stockés séparément sur le disque dans une structure de + répertoires basée sur le condensé md5 de l'URL mise en cache. + Plusieurs réponses à contenu négocié peuvent être stockées en même + temps, mais la mise en cache de contenus partiels n'est pas + supportée par ce module. L'utilitaire + htcacheclean permet de lister et de supprimer les + URLs mises en cache, et de maintenir le cache en deçà de + certaines limites de taille et de nombre d'inodes.
+
mod_cache_socache
+
Implémente un gestionnaire de stockage basé sur un cache d'objets + partagés. Les en-têtes et corps sont stockés ensemble sous une seule + clé basée sur l'URL de la réponse mise en cache. Des réponses à + contenus multiples négociés peuvent être stockées simultanément, mais + ce module ne supporte pas la mise en cache de contenus partiels.
+
+ +

Pour de plus amples détails, une description, et des exemples, + reportez-vous au Guide de la mise en + cache.

+
+ +
top
+
top
+
+

Exemple de configuration

+

Extrait de httpd.conf

#
+# Exemple de configuration du cache
+#
+LoadModule cache_module modules/mod_cache.so
+<IfModule mod_cache.c>
+    LoadModule cache_disk_module modules/mod_cache_disk.so
+    <IfModule mod_cache_disk.c>
+        CacheRoot "c:/cacheroot"
+        CacheEnable disk  "/"
+        CacheDirLevels 5
+        CacheDirLength 3
+    </IfModule>
+    
+    # Lorsqu'on sert de mandataire, on ne met pas en cache la liste
+# des mises à jour de sécurité
+    CacheDisable "http://security.update.server/update-list/"
+</IfModule>
+
+
top
+
+

Eviter une tempête de requête

+

Lorsqu'une entrée du cache est périmée, mod_cache + soumet une requête conditionnelle au processus d'arrière-plan, qui est + censé confirmer la validité de l'entrée du cache, ou dans la négative + envoyer une entrée mise à jour.

+

Un court mais non négligeable laps de temps existe entre le moment + où l'entrée du cache est périmée, et le moment où elle est mise à + jour. Sur un serveur fortement chargé, un certain nombre de requêtes + peut arriver pendant ce laps de temps, et provoquer une + tempête de requêtes susceptibles de saturer le + processus d'arrière-plan de manière soudaine et imprédictible.

+

Pour contenir cette tempête, on peut utiliser la directive CacheLock afin de définir un répertoire où + seront créés à la volée des verrous pour les URLs. Ces + verrous sont utilisés comme autant d'indications par les + autres requêtes, soit pour empêcher une tentative de mise en cache (un autre + processus est en train de récupérer l'entité), soit pour indiquer qu'une + entrée périmée est en cours de mise à jour (pendant ce temps, c'est le contenu + périmé qui sera renvoyé). +

+

Mise en cache initiale d'une entrée

+ +

Lorsqu'une entité est mise en cache pour la première fois, un + verrou est créé pour cette entité jusqu'à ce que la réponse ait été + entièrement mise en cache. Pendant la durée de vie du verrou, le + cache va empêcher une seconde tentative de mise en cache de la même + entité. Bien que cela ne suffise pas à contenir la tempête de + requêtes, toute tentative de mettre en cache la même entité + plusieurs fois simultanément est stoppée. +

+ +

Mise à jour d'une entrée périmée

+ +

Lorsqu'une entrée atteint la limite de sa durée de vie, et + devient par conséquent périmée, un verrou est créé pour cette entité + jusqu'à ce que la réponse ait été soit confirmée comme encore + valide, soit remplacée par le processus d'arrière-plan. Pendant la + durée de vie du verrou, une seconde requête entrante va provoquer le + renvoi de la donnée périmée, et la tempête de requêtes sera + contenue.

+ +

Verrous et en-tête Cache-Control: no-cache

+ +

Les verrous ne sont utilisés qu'à titre + indicatif pour enjoindre le cache à être plus coopératif + avec les serveurs d'arrière-plan, et il est possible de passer outre + si nécessaire. Si le client envoie une requête contenant un en-tête + Cache-Control imposant un nouveau téléchargement de l'entité, tout + verrou éventuel sera ignoré, la requête du client sera honorée + immédiatement, et l'entrée du cache mise à jour.

+ +

Comme mécanisme de sécurité supplémentaire, la durée de vie maximale des + verrous est configurable. Lorsque cette limite est atteinte, le verrou est + supprimé et une autre requête peut alors en créer un nouveau. Cette durée de + vie peut être définie via la directive CacheMaxExpire, et sa valeur par défaut est + de 5 secondes. +

+ +

Exemple de configuration

+ +

Activation du verrouillage du cache

#
+# Active le verrouillage du cache
+#
+<IfModule mod_cache.c>
+    CacheLock on
+    CacheLockPath "/tmp/mod_cache-lock"
+    CacheLockMaxAge 5
+</IfModule>
+
+ +
top
+
+

Contrôle fin via le filtre CACHE

+

Dans son mode de fonctionnement par défaut, le cache s'exécute sous + la forme d'un gestionnaire rapide, court-circuitant la majorité des + traitements du serveur et fournissant ainsi une mise en cache + possédant les plus hautes performances disponibles.

+ +

Dans ce mode, le cache s'incruste devant le + serveur, comme si un mandataire de mise en cache indépendant RFC 2616 + était placé devant ce dernier.

+ +

Bien que que ce mode offre les meilleures performances, les + administrateurs peuvent souhaiter, dans certaines circonstances, + effectuer des traitements sur la requête après que cette dernière ait + été mise en cache, comme ajouter du contenu personnalisé à la page + mise en cache, ou appliquer des restrictions d'autorisations au + contenu. Pour y parvenir, l'administrateur sera alors souvent forcé de + placer des serveurs mandataires inverses indépendants soit derrière, + soit devant le serveur de mise en cache.

+ +

Pour résoudre ce problème, la directive CacheQuickHandler peut être définie à + off, afin que le serveur traite toutes les phases + normalement exécutées par une requête non mise en cache, y compris les + phases d'authentification et d'autorisation.

+ +

En outre, l'administrateur peut éventuellement spécifier le + point précis dans la chaîne de filtrage où devra + intervenir la mise en cache en ajoutant le filtre + CACHE à la chaîne de filtrage en sortie.

+ +

Par exemple, pour mettre en cache le contenu avant d'appliquer une + compression à la réponse, placez le filtre CACHE + avant le filtre DEFLATE comme dans l'exemple suivant + :

+ +
# Mise en cache du contenu avant la compression optionnelle
+CacheQuickHandler off
+AddOutputFilterByType CACHE;DEFLATE text/plain
+ + +

Une autre possibilité consiste à mettre en cache le contenu avant + l'ajout de contenu personnalisé via mod_include (ou + tout autre filtre de traitement de contenu). Dans l'exemple suivant, + les modèles contenant des balises comprises par + mod_include sont mis en cache avant d'être + interprétés :

+ +
# Mise en cache du contenu avant l'intervention de mod_include et
+   # mod_deflate
+CacheQuickHandler off
+AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
+ + +

Vous pouvez insérer le filtre CACHE en tout point + de la chaîne de filtrage. Dans l'exemple suivant, le contenu est mis + en cache après avoir été interprété par mod_include, + mais avant d'être traité par mod_deflate :

+ +
# Mise en cache du contenu entre les interventions de mod_include et
+   # mod_deflate
+CacheQuickHandler off
+AddOutputFilterByType INCLUDES;CACHE;DEFLATE text/html
+ + +

Avertissement :

Si pour une raison + ou pour une autre, le point d'insertion du filtre + CACHE dans la chaîne de filtrage est modifié, vous + devez vider votre cache pour être sûr que les données + servies soient à jour. En effet, mod_cache n'est pas + en mesure d'effectuer cette opération à votre place.
+ +
top
+
+

Etat du cache et journalisation

+

Lorsque mod_cache a décidé s'il devait ou non + servir une entité depuis le cache, les raisons précises de cette + décision sont enregistrées dans l'environnement du sous-processus + interne à la requête sous la clé cache-status. + Cette information peut être journalisée via la directive LogFormat comme suit :

+ +
LogFormat "%{cache-status}e ..."
+ + +

En fonction de la décision prise, l'information est aussi écrite + dans l'environnement du sous-processus sous une des quatre clés + suivantes :

+ +
+
cache-hit
Le contenu a été servi depuis le cache.
+
cache-revalidate
Le contenu du cache était périmé, a été + mis à jour avec succès, puis servi depuis le cache.
+
cache-miss
Le contenu n'était pas dans le cache et a été + servi directement depuis le serveur demandé.
+
cache-invalidate
L'entité du cache est devenue invalide + suite à une requête d'un type autre que GET ou HEAD.
+
+ +

Il est alors possible d'envisager une journalisation conditionnelle + du traitement des requêtes par rapport au cache comme dans l'exemple + suivant :

+ +
CustomLog "cached-requests.log" common env=cache-hit
+CustomLog "uncached-requests.log" common env=cache-miss
+CustomLog "revalidated-requests.log" common env=cache-revalidate
+CustomLog "invalidated-requests.log" common env=cache-invalidate
+ + +

Pour les concepteurs de modules, une accroche (hook) nommée + cache_status est disponible et permet aux modules de + répondre aux résultats de la vérification du cache ci-dessus de manière + personnalisée.

+ +
+
top
+

Directive CacheDefaultExpire

+ + + + + + + +
Description:La durée par défaut de mise en cache d'un document +lorsqu'aucune date d'expiration n'a été spécifiée.
Syntaxe:CacheDefaultExpire secondes
Défaut:CacheDefaultExpire 3600 (une heure)
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

La directive CacheDefaultExpire permet de + spécifier un temps par défaut, en secondes, pendant lequel sera conservé + dans le cache un document qui ne possède ni date d'expiration, ni date de + dernière modification. La valeur de cette directive n'est pas + écrasée par la valeur de la directive CacheMaxExpire, même si cette dernière est + utilisée.

+ +
CacheDefaultExpire 86400
+ + +
+
top
+

Directive CacheDetailHeader

+ + + + + + + + +
Description:Ajoute un en-tête X-Cache-Detail à la réponse.
Syntaxe:CacheDetailHeader on|off
Défaut:CacheDetailHeader off
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
Compatibilité:Disponible depuis la version 2.3.9 d'Apache
+

Lorsque la directive CacheDetailHeader est définie à + on, un en-tête X-Cache-Detail est ajouté à la réponse et + contient les raisons précises d'une décision d'utilisation du cache vis à vis + de cette dernière.

+ +

Ceci peut s'avérer utile au cours du développement de services + RESTful mis en cache pour obtenir des informations supplémentaires à + propos des décisions vis à vis du cache écrites dans les en-têtes de + la réponse. Il est ainsi possible de vérifier si + Cache-Control et d'autres en-têtes ont été correctement + utilisés par le service et le client.

+ +

Si le gestionnaire normal est utilisé, cette directive peut se situer dans + une section <Directory> ou + <Location>. Si c'est le + gestionnaire rapide qui est utilisé, elle doit se situer dans un contexte de + serveur principal ou de serveur virtuel, sinon elle sera ignorée.

+ +
# Active l'en-tête X-Cache-Detail
+CacheDetailHeader on
+ + +

+ X-Cache-Detail: "conditional cache hit: entity refreshed" from localhost
+

+ + +
+
top
+

Directive CacheDisable

+ + + + + + +
Description:Désactive la mise en cache des URLs +spécifiées
Syntaxe:CacheDisable chaîne-url | on
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

La directive CacheDisable enjoint + mod_cache de ne pas mettre en cache l'URL + spécifiée par chaîne URL, ainsi que les URLs de niveaux + inférieurs.

+ +

Exemple

CacheDisable "/fichiers_locaux"
+
+ +

Si la directive se trouve à l'intérieur d'une section <Location>, le chemin doit être + spécifié en dessous de la Location, et si le mot "on" est utilisé, la mise + en cache sera désactivée pour l'ensemble de l'arborescence concernée par la + section Location.

+ +

Exemple

<Location "/foo">
+    CacheDisable on
+</Location>
+
+ +

Avec les versions 2.2.12 et ultérieures, on peut définir la + variable d'environnement no-cache pour une définition + plus fine des ressources à mettre en cache.

+ +

Voir aussi

+ +
+
top
+

Directive CacheEnable

+ + + + + + + +
Description:Active la mise en cache des URLs spécifiées en utilisant le +gestionnaire de stockage précisé
Syntaxe:CacheEnable type de cache [chaîne +URL]
Contexte:configuration globale, serveur virtuel, répertoire
Statut:Extension
Module:mod_cache
Compatibilité:Une chaîne URL telle que '/' s'appliquait à tout contenu +en mandat direct dans les versions 2.2 et antérieures.
+

La directive CacheEnable enjoint + mod_cache de mettre en cache l'URL précisée par + chaîne URL, ainsi que les URLs de niveaux inférieurs. Le + gestionnaire de stockage du cache est spécifié à l'aide de l'argument + type de cache. La directive CacheEnable + peut être placée à l'intérieur d'une section <Location> ou <LocationMatch> pour indiquer que le contenu + considéré peut être mis en cache. Si type de cache a pour valeur + disk, mod_cache utilisera le gestionnaire de + stockage sur disque implémenté par + mod_cache_disk. Pour que mod_cache + utilise le gestionnaire de stockage basé sur le cache d'objets + partagés implémenté par mod_cache_socache, + spécifiez socache comme valeur du paramètre type + de cache.

+

Si les différentes directives CacheEnable + spécifient des URLs qui se recoupent (comme dans l'exemple + ci-dessous), tous les gestionnaires de stockage possibles seront + lancés, jusqu'au premier d'entre eux qui traitera effectivement la + requête. + L'ordre dans lequel les gestionnaires de stockage sont lancés est déterminé + par l'ordre dans lequel apparaissent les directives + CacheEnable dans le fichier de configuration. Les + directives CacheEnable situées à l'intérieur de + sections <Location> ou + <LocationMatch> sont + traitées avant les directives CacheEnable définies au + niveau global.

+ +

En fonctionnement du type serveur mandataire direct, chaîne + URL doit au moins débuter par un protocole pour lequel la mise + en cache doit être activée.

+ +
# Mise en cache de contenu (gestionnaire normal seulement)
+CacheQuickHandler off
+<Location "/foo">
+    CacheEnable disk
+</Location>
+
+# Mise en cache via une expression rationnelle (gestionnaire normal seulement)
+CacheQuickHandler off
+<LocationMatch "foo$">
+    CacheEnable disk
+</LocationMatch>
+
+# Mise en cache de tous les contenus, à l'exception des URLs
+# mandatées en direct (gestionnaire normal ou rapide)
+CacheEnable  disk  /
+
+# Mise en cache des URLs FTP mandatées (gestionnaire normal ou rapide)
+CacheEnable  disk  ftp://
+
+# Mise en cache des contenus mandatés en direct depuis www.example.org (gestionnaire normal ou rapide)
+CacheEnable  disk  http://www.example.org/
+ + +

Un nom d'hôte commençant par un caractère "*" + correspondra à tout nom d'hôte se terminant par le suffixe + considéré. Un nom d'hôte commençant par un caractère + "." correspondra à tout nom d'hôte contenant le + composant de nom de domaine qui suit ce caractère.

+ +
# Correspond à www.example.org et fooexample.org
+CacheEnable  disk  "http://*example.org/"
+# Correspond à www.example.org, mais pas à fooexample.org
+CacheEnable  disk  "http://.example.org/"
+ + +

Depuis la version 2.2.12, on peut définir la variable + d'environnement no-cache pour une définition plus fine + des ressources à mettre en cache.

+ + +

Voir aussi

+ +
+
top
+

Directive CacheHeader

+ + + + + + + + +
Description:Ajoute un en-tête X-Cache à la réponse.
Syntaxe:CacheHeader on|off
Défaut:CacheHeader off
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
Compatibilité:Disponible depuis la version 2.3.9 d'Apache
+

Lorsque la directive CacheHeader est définie à on, un + en-tête X-Cache est ajouté à la réponse et contient + l'état du cache pour cette dernière. Si le gestionnaire normal est + utilisé, cette directive peut se situer dans une section + <Directory> ou + <Location>. Si c'est + le gestionnaire rapide qui est utilisé, elle doit se situer dans un + contexte de serveur principal ou de serveur virtuel, sinon elle sera + ignorée.

+ +
+
HIT
Le contenu était à jour et a été + servi depuis le cache.
+
REVALIDATE
Le contenu était périmé, a + été mis à jour, puis a été servi depuis le cache.
+
MISS
Le contenu n'a pas été servi + depuis le cache, mais directement depuis le serveur demandé.
+
+ +
# Active l'en-tête X-Cache
+CacheHeader on
+ + +
X-Cache: HIT from localhost
+ + + + +
+
top
+

Directive CacheIgnoreCacheControl

+ + + + + + + +
Description:Ignore les en-têtes de requête enjoignant de ne pas servir +le contenu au client depuis le cache
Syntaxe:CacheIgnoreCacheControl On|Off
Défaut:CacheIgnoreCacheControl Off
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
+

Normalement, les requêtes contenant des en-têtes tels que + Cache-Control: no-cache ou Pragma: no-cache ne sont pas + servies depuis le cache. La directive + CacheIgnoreCacheControl permet de modifier ce + comportement. Avec CacheIgnoreCacheControl + On, le serveur tentera de servir la ressource depuis le + cache, même si la requête contient un des en-têtes cités plus haut. + Les ressources qui requièrent une autorisation ne seront + jamais mises en cache.

+ +
CacheIgnoreCacheControl On
+ + +

Avertissement :

+ Cette directive permet de servir des ressources depuis le cache, + même si le client a demandé à ce qu'il n'en soit pas ainsi. Le + contenu servi est ainsi susceptible d'être périmé. +
+ +

Voir aussi

+ +
+
top
+

Directive CacheIgnoreHeaders

+ + + + + + + +
Description:Ne pas stocker le(s) en-tête(s) spécifié(s) dans le cache. +
Syntaxe:CacheIgnoreHeaders en-tête [en-tête] ...
Défaut:CacheIgnoreHeaders None
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
+

En accord avec la RFC 2616, les en-têtes HTTP hop-by-hop ne sont + pas stockés dans le cache. Les en-têtes HTTP suivant sont des + en-têtes hop-by-hop, et en tant que tels, ne sont en aucun + cas stockés dans le cache, quelle que soit la définition de la + directive CacheIgnoreHeaders :

+ +
    +
  • Connection
  • +
  • Keep-Alive
  • +
  • Proxy-Authenticate
  • +
  • Proxy-Authorization
  • +
  • TE
  • +
  • Trailers
  • +
  • Transfer-Encoding
  • +
  • Upgrade
  • +
+ +

La directive CacheIgnoreHeaders permet de + spécifier quels en-têtes HTTP ne doivent pas être stockés dans le + cache. Par exemple, il peut s'avérer pertinent dans certains cas de + ne pas stocker les cookies dans le cache.

+ +

La directive CacheIgnoreHeaders accepte + une liste d'en-têtes HTTP séparés par des espaces, qui ne doivent + pas être stockés dans le cache. Si les en-têtes hop-by-hop sont les + seuls à ne pas devoir être stockés dans le cache (le comportement + compatible RFC 2616), la directive + CacheIgnoreHeaders peut être définie à + None.

+ +

Exemple 1

CacheIgnoreHeaders Set-Cookie
+
+ +

Exemple 2

CacheIgnoreHeaders None
+
+ +

Avertissement :

+ Si des en-têtes nécessaires à la bonne gestion du cache, comme + Expires, ne sont pas stockés suite à la définition + d'une directive CacheIgnoreHeaders, le + comportement de mod_cache sera imprévisible. +
+ +
+
top
+

Directive CacheIgnoreNoLastMod

+ + + + + + + +
Description:Ignore le fait qu'une réponse ne possède pas d'en-tête Last +Modified.
Syntaxe:CacheIgnoreNoLastMod On|Off
Défaut:CacheIgnoreNoLastMod Off
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

Normalement, les documents qui ne possèdent pas de date de + dernière modification ne sont pas mis en cache. Dans certaines + circonstances, la date de dernière modification est supprimée (au + cours des traitements liés à mod_include par + exemple), ou n'existe tout simplement pas. La directive + CacheIgnoreNoLastMod permet de spécifier si + les documents ne possèdant pas de date de dernière modification doivent être + mis en cache, même sans date de dernière modification. Si le document ne + possède ni date d'expiration, ni date de dernière modification, la valeur + spécifiée par la directive CacheDefaultExpire servira à générer une date + d'expiration. +

+ +
CacheIgnoreNoLastMod On
+ + +
+
top
+

Directive CacheIgnoreQueryString

+ + + + + + + +
Description:Ignore la chaîne de paramètres lors de la mise en +cache
Syntaxe:CacheIgnoreQueryString On|Off
Défaut:CacheIgnoreQueryString Off
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
+

Normalement, les requêtes comportant une chaîne de paramètres + sont mises en cache séparément si leurs chaînes de paramètres + diffèrent. + En accord avec la RFC 2616/13.9, cette mise en cache n'est effectuée + séparément que si une date d'expiration est spécifiée. La directive + CacheIgnoreQueryString permet la mise en + cache de requêtes même si aucune date d'expiration est spécifiée, et + de renvoyer une réponse depuis la cache même si les chaînes de + paramètres diffèrent. Du point de vue du cache, la requête est + traitée comme si elle ne possèdait pas de chaîne de paramètres + lorsque cette directive est activée.

+ +
CacheIgnoreQueryString On
+ + + +
+
top
+

Directive CacheIgnoreURLSessionIdentifiers

+ + + + + + + +
Description:Ignore les identifiants de session définis encodés dans +l'URL lors de la mise en cache +
Syntaxe:CacheIgnoreURLSessionIdentifiers identifiant +[identifiant] ...
Défaut:CacheIgnoreURLSessionIdentifiers None
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
+

Certaines applications encodent l'identifiant de session dans + l'URL comme dans l'exemple suivant : +

+
    +
  • /une-application/image.gif;jsessionid=123456789
  • +
  • /une-application/image.gif?PHPSESSIONID=12345678
  • +
+

Ceci implique la mise en cache des ressources séparément pour + chaque session, ce qui n'est en général pas souhaité. La directive + CacheIgnoreURLSessionIdentifiers permet de + définir une liste d'identifiants qui seront supprimés de la clé + utilisée pour identifier une entité dans le cache, de façon à ce que + les ressources ne soient pas stockées séparément pour chaque + session. +

+

CacheIgnoreURLSessionIdentifiers None vide la liste + des identifiants ignorés. Autrement, chaque identifiant spécifié est + ajouté à la liste.

+ +

Exemple 1

CacheIgnoreURLSessionIdentifiers jsessionid
+
+ +

Exemple 2

CacheIgnoreURLSessionIdentifiers None
+
+ + +
+
top
+

Directive CacheKeyBaseURL

+ + + + + + + +
Description:Remplace l'URL de base des clés du cache mandatées en +inverse
Syntaxe:CacheKeyBaseURL URL
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
Compatibilité:Disponible depuis la version 2.3.9 d'Apache
+

Lorsque la directive CacheKeyBaseURL est utilisée, + l'URL spécifiée sera utilisée comme URL de base pour calculer l'URL des clés + du cache dans la configuration du mandataire inverse. Par défaut, c'est le + protocole/nom d'hôte/port du serveur virtuel courant qui sera utilisé pour + construire la clé de cache. Dans le cas d'un cluster de machines, si toutes + les entrées du cache doivent posséder la même clé, cette directive permet de + spécifier une nouvelle URL de base.

+ +
# Remplace l'URL de base de la clé de cache.
+CacheKeyBaseURL "http://www.example.com/"
+ + +
Prenez garde en définissant cette directive. Si + deux serveurs virtuels distincts possèdent accidentellement la même + URL de base, les entrées en provenance d'un serveur virtuel seront + servies par l'autre.
+ + +
+
top
+

Directive CacheLastModifiedFactor

+ + + + + + + +
Description:Le facteur utilisé pour générer une date d'expiration en +fonction de la date de dernière modification.
Syntaxe:CacheLastModifiedFactor flottant
Défaut:CacheLastModifiedFactor 0.1
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

Si un document ne possède pas de date d'expiration, elle peut + être calculée en fonction de la date de dernière modification, si + elle existe. La directive + CacheLastModifiedFactor permet de spécifier + un facteur à utiliser pour la génération de cette date + d'expiration au sein de la formule suivante : + + délai-expiration = durée-depuis-date-dernière-modification * + facteur + date-expiration = date-courante + délai-expiration + + Par exemple, si la dernière modification du document date de 10 + heures, et si facteur a pour valeur 0.1, le délai + d'expiration sera de 10*0.1 = 1 heure. Si l'heure courante est + 3:00pm, la date d'expiration calculée sera 3:00pm + 1 heure = + 4:00pm. + + Si le délai d'expiration est supérieur à celui spécifié par la directive + CacheMaxExpire, c'est ce dernier + qui l'emporte.

+ +
CacheLastModifiedFactor 0.5
+ + +
+
top
+

Directive CacheLock

+ + + + + + + + +
Description:Active la protection contre les tempêtes de requêtes.
Syntaxe:CacheLock on|off
Défaut:CacheLock off
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
Compatibilité:Disponible depuis la version 2.2.15 d'Apache
+

La directive CacheLock active la protection + contre les tempêtes de requêtes pour l'espace d'adressage donné.

+ +

La configuration minimale pour activer le verrouillage contre les + tempêtes de requêtes dans le répertoire temp par défaut du système est + la suivante :

+ +
# Active le verrouillage du cache
+CacheLock on
+ + + +
+
top
+

Directive CacheLockMaxAge

+ + + + + + + +
Description:Définit la durée de vie maximale d'un verrou de cache.
Syntaxe:CacheLockMaxAge entier
Défaut:CacheLockMaxAge 5
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
+

La directive CacheLockMaxAge permet de + spécifier la durée de vie maximale d'un verrou de cache.

+ +

Un verrou plus ancien que cette valeur exprimée en secondes sera + ignoré, et la prochaine requête entrante sera alors en mesure de + recréer le verrou. Ce mécanisme permet d'éviter les mises à jour trop + longues initiées par des clients lents.

+ + +
+
top
+

Directive CacheLockPath

+ + + + + + + +
Description:Définit le répertoire des verrous.
Syntaxe:CacheLockPath répertoire
Défaut:CacheLockPath /tmp/mod_cache-lock
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
+

La directive CacheLockPath permet de + spécifier le répertoire dans lequel les verrous sont créés. Par + défaut, c'est le répertoire temporaire du système qui est utilisé. Les + verrous sont des fichiers vides qui n'existent que pour les URLs + périmées en cours de mise à jour, et consomment donc bien moins de + ressources que le traditionnel cache sur disque.

+ + +
+
top
+

Directive CacheMaxExpire

+ + + + + + + +
Description:La durée maximale en secondes de mise en cache d'un +document
Syntaxe:CacheMaxExpire secondes
Défaut:CacheMaxExpire 86400 (une journée)
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

La directive CacheMaxExpire permet de + spécifier le nombre maximum de secondes pendant lequel les documents + HTTP suceptibles d'être mis en cache seront conservés sans vérifier + leur contenu sur le serveur d'origine. Ce nombre de secondes + correspond donc à la durée maximale pendant laquelle un document ne + sera pas à jour. L'utilisation de cette valeur maximale est forcée, + même si le document possède une date d'expiration.

+ +
CacheMaxExpire 604800
+ + + +
+
top
+

Directive CacheMinExpire

+ + + + + + + +
Description:La durée minimale en secondes de mise en cache d'un +document
Syntaxe:CacheMinExpire secondes
Défaut:CacheMinExpire 0
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

La directive CacheMinExpire permet de + spécifier le nombre minimum de secondes pendant lequel les documents + HTTP susceptibles d'être mis en cache seront conservés sans vérifier + leur contenu sur le serveur d'origine. Elle n'est prise en compte + que dans le cas où le document ne possède aucune date d'expiration + valide.

+ +
CacheMinExpire 3600
+ + +
+
top
+

Directive CacheQuickHandler

+ + + + + + + + +
Description:Exécute le cache à partir d'un gestionnaire rapide.
Syntaxe:CacheQuickHandler on|off
Défaut:CacheQuickHandler on
Contexte:configuration globale, serveur virtuel
Statut:Extension
Module:mod_cache
Compatibilité:Disponible à partir de la version 2.3.3 du serveur HTTP + Apache
+

La directive CacheQuickHandler permet de contrôler + la phase au cours de laquelle la mise en cache est effectuée.

+ +

Avec la configuration par défaut, le cache agit au cours de la + phase du gestionnaire rapide. Cette phase court-circuite la majorité + des traitements du serveur, et constitue le mode d'opération le plus + performant pour un serveur typique. Le cache + s'incruste devant le serveur, et la majorité des + traitements du serveur est court-circuitée.

+ +

Lorsque cette directive est définie à off, le cache agit comme un + gestionnaire normal, et est concerné par toutes les phases de + traitement d'une requête. Bien que ce mode soit moins performant que + le mode par défaut, il permet d'utiliser le cache dans les cas où un + traitement complet de la requête est nécessaire, comme par exemple + lorsque le contenu est soumis à autorisation.

+ +
# Exécute le cache comme un gestionnaire normal
+CacheQuickHandler off
+ + +

Lorsque le gestionnaire rapide est désactivé, l'administrateur a + aussi la possibilité de choisir avec précision le point de la chaîne + de filtrage où la mise en cache sera effectuée, en utilisant le + filtre CACHE.

+ +
# Mise en cache du contenu avant l'intervention de mod_include et
+     # mod_deflate
+CacheQuickHandler off
+AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
+ + +

Si le filtre CACHE est spécifié plusieurs fois, c'est la dernière + instance qui sera prise en compte.

+ + +
+
top
+

Directive CacheStaleOnError

+ + + + + + + + +
Description:Sert du contenu non à jour à la place de réponses 5xx.
Syntaxe:CacheStaleOnError on|off
Défaut:CacheStaleOnError on
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
Compatibilité:Disponible depuis la version 2.3.9 d'Apache
+

Lorsque la directive CacheStaleOnError est définie à + on, et si des données non mises à jour sont disponibles dans le cache, ce + dernier renverra ces données, plutôt qu'une éventuelle réponse 5xx en + provenance du serveur d'arrière-plan. Alors que l'en-tête Cache-Control envoyé + par les clients sera respecté, et que les clients recevront donc dans ce cas + la réponse 5xx brute à leur requête, cette réponse 5xx renvoyée au client + n'invalidera pas le contenu dans le cache.

+ +
# Sert des données non mises à jour en cas d'erreur.
+CacheStaleOnError on
+ + + +
+
top
+

Directive CacheStoreExpired

+ + + + + + + +
Description:Tente de mettre en cache les réponses que le serveur +considère comme arrivées à expiration
Syntaxe:CacheStoreExpired On|Off
Défaut:CacheStoreExpired Off
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

Depuis la version 2.2.4, les réponses qui sont arrivées à + expiration ne sont pas stockées dans le cache. La directive + CacheStoreExpired permet de modifier ce + comportement. Avec CacheStoreExpired On, le + serveur tente de mettre en cache la ressource si elle est périmée. + Les requêtes suivantes vont déclencher une requête si-modifié-depuis + de la part du serveur d'origine, et la réponse sera renvoyée à + partir du cache si la ressource d'arrière-plan n'a pas été modifiée.

+ +
CacheStoreExpired On
+ + + +
+
top
+

Directive CacheStoreNoStore

+ + + + + + + +
Description:Tente de mettre en cache les requêtes ou réponses dont +l'entête Cache-Control: a pour valeur no-store.
Syntaxe:CacheStoreNoStore On|Off
Défaut:CacheStoreNoStore Off
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

Normalement, les requêtes ou réponses dont l'en-tête + Cache-Control: no-store ne sont pas stockées dans le + cache. La directive CacheStoreNoStore permet + de modifier ce comportement. Si + CacheStoreNoStore est définie à On, le + serveur tente de mettre la ressource en cache même si elle contient + des en-têtes ayant pour valeur no-store. Les ressources + nécessitant une autorisation ne sont jamais mises en + cache.

+ + +
CacheStoreNoStore On
+ + + +

Avertissement :

+ Selon la RFC 2616, la valeur d'en-tête no-store est censée + "prévenir la suppression ou la rétention par inadvertance + d'informations sensibles (par exemple, sur des bandes de + sauvegarde)". Autrement dit, l'activation de la directive + CacheStoreNoCache pourrait provoquer le + stockage d'informations sensibles dans le cache. Vous avez donc + été prévenus. +
+ +

Voir aussi

+ +
+
top
+

Directive CacheStorePrivate

+ + + + + + + +
Description:Tente de mettre en cache des réponses que le serveur a +marquées comme privées
Syntaxe:CacheStorePrivate On|Off
Défaut:CacheStorePrivate Off
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Statut:Extension
Module:mod_cache
+

Normalement, les réponse comportant un en-tête Cache-Control: + private ne seront pas stockées dans le cache. La directive + CacheStorePrivate permet de modifier ce comportement. + Si CacheStorePrivate est définie à On, le serveur + tentera de mettre la ressource en cache, même si elle + contient des en-têtes ayant pour valeur private. Les ressources + nécessitant une autorisation ne sont jamais mises en + cache.

+ + +
CacheStorePrivate On
+ + + +

Avertissement :

+ Cette directive autorise la mise en cache même si le serveur + indique que la ressource ne doit pas être mise en cache. Elle + n'est de ce fait appropriée que dans le cas d'un cache + 'privé'. +
+ +

Voir aussi

+ +
+
+
+

Langues Disponibles:  en  | + fr  | + ja  | + ko 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our mailing lists.
+
+ \ No newline at end of file -- cgit v1.2.3