caching.html.fr revision 3f08db06526d6901aa08c110b5bc7dde6bc39905
af84459fbf938e508fd10b01cb8d699c79083813takashi<?xml version="1.0" encoding="ISO-8859-1"?>
af84459fbf938e508fd10b01cb8d699c79083813takashi<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
af84459fbf938e508fd10b01cb8d699c79083813takashi<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
af84459fbf938e508fd10b01cb8d699c79083813takashi XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
af84459fbf938e508fd10b01cb8d699c79083813takashi This file is generated from xml source: DO NOT EDIT
af84459fbf938e508fd10b01cb8d699c79083813takashi XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
af84459fbf938e508fd10b01cb8d699c79083813takashi -->
af84459fbf938e508fd10b01cb8d699c79083813takashi<title>Guide de la mise en cache - Serveur Apache HTTP</title>
af84459fbf938e508fd10b01cb8d699c79083813takashi<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
af84459fbf938e508fd10b01cb8d699c79083813takashi<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
af84459fbf938e508fd10b01cb8d699c79083813takashi<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
af84459fbf938e508fd10b01cb8d699c79083813takashi<link href="/images/favicon.ico" rel="shortcut icon" /></head>
af84459fbf938e508fd10b01cb8d699c79083813takashi<body id="manual-page"><div id="page-header">
af84459fbf938e508fd10b01cb8d699c79083813takashi<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">Glossaire</a> | <a href="/sitemap.html">Plan du site</a></p>
3f08db06526d6901aa08c110b5bc7dde6bc39905nd<p class="apache">Serveur Apache HTTP Version 2.5</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi<img alt="" src="/images/feather.gif" /></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div id="path">
3f08db06526d6901aa08c110b5bc7dde6bc39905nd<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.5</a></div><div id="page-content"><div id="preamble"><h1>Guide de la mise en cache</h1>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="toplang">
af84459fbf938e508fd10b01cb8d699c79083813takashi<p><span>Langues Disponibles: </span><a href="/en/caching.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
af84459fbf938e508fd10b01cb8d699c79083813takashi<a href="/fr/caching.html" title="Fran�ais">&nbsp;fr&nbsp;</a> |
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung<a href="/tr/caching.html" hreflang="tr" rel="alternate" title="T�rk�e">&nbsp;tr&nbsp;</a></p>
af84459fbf938e508fd10b01cb8d699c79083813takashi</div>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Ce document compl�te la documentation de r�f�rence des modules
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>, <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code>,
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> et du programme <a href="programs/htcacheclean.html">htcacheclean</a>.
3c13a815670b54d1c17bf02954f7d2b066cde95cnd Il d�crit l'utilisation des fonctionnalit�s de mise en
3c13a815670b54d1c17bf02954f7d2b066cde95cnd cache du serveur HTTP Apache
af84459fbf938e508fd10b01cb8d699c79083813takashi pour acc�l�rer les services web et proxy, tout en �vitant les probl�mes
af84459fbf938e508fd10b01cb8d699c79083813takashi courants et les erreurs de configuration.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi </div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#introduction">Introduction</a></li>
af84459fbf938e508fd10b01cb8d699c79083813takashi<li><img alt="" src="/images/down.gif" /> <a href="#overview">Vue d'ensemble de la mise en cache</a></li>
af84459fbf938e508fd10b01cb8d699c79083813takashi<li><img alt="" src="/images/down.gif" /> <a href="#security">Consid�rations sur la s�curit�</a></li>
af84459fbf938e508fd10b01cb8d699c79083813takashi<li><img alt="" src="/images/down.gif" /> <a href="#filehandle">Mise en cache de la gestion de fichier</a></li>
af84459fbf938e508fd10b01cb8d699c79083813takashi<li><img alt="" src="/images/down.gif" /> <a href="#inmemory">Mise en cache en m�moire</a></li>
af84459fbf938e508fd10b01cb8d699c79083813takashi<li><img alt="" src="/images/down.gif" /> <a href="#disk">Mise en cache sur disque</a></li>
af84459fbf938e508fd10b01cb8d699c79083813takashi</ul></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="section">
af84459fbf938e508fd10b01cb8d699c79083813takashi<h2><a name="introduction" id="introduction">Introduction</a></h2>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Depuis la version 2.2 du serveur HTTP Apache, les modules
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi et <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> ne sont plus jug�s exp�rimentaux
af84459fbf938e508fd10b01cb8d699c79083813takashi et on consid�re qu'ils peuvent �tre utilis�s en production. Ces
af84459fbf938e508fd10b01cb8d699c79083813takashi architectures de mise en cache constituent un puissant concept
af84459fbf938e508fd10b01cb8d699c79083813takashi d'acc�l�ration de la gestion HTTP, tant comme serveur web originel
af84459fbf938e508fd10b01cb8d699c79083813takashi que comme mandataire.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
cd6c8de3bedcc401ee230159b0439fa20f44488etakashi <p>Le module <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> et son module de soutien
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi permettent une mise en cache intelligente du point de vue HTTP.
af84459fbf938e508fd10b01cb8d699c79083813takashi Le contenu proprement dit est stock� dans le cache,
af84459fbf938e508fd10b01cb8d699c79083813takashi et mod_cache tente d'honorer tous les en-t�tes HTTP et les options
af84459fbf938e508fd10b01cb8d699c79083813takashi qui d�finissent la possibilit� de mise en cache du contenu. Il g�re non
af84459fbf938e508fd10b01cb8d699c79083813takashi seulement le contenu local, mais aussi le contenu mandat�.
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi est con�u pour des configurations de mise en cache simples ou complexes,
af84459fbf938e508fd10b01cb8d699c79083813takashi dans lesquels vous traitez de contenu mandat�, de contenu local dynamique
af84459fbf938e508fd10b01cb8d699c79083813takashi ou avez besoin d'acc�l�rer l'acc�s � des fichiers locaux qui sont modifi�s
af84459fbf938e508fd10b01cb8d699c79083813takashi au cours du temps.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Le module <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> quant � lui, constitue une
af84459fbf938e508fd10b01cb8d699c79083813takashi forme de mise en cache plus basique, mais quelques fois int�ressante.
af84459fbf938e508fd10b01cb8d699c79083813takashi Plut�t que de g�rer la complexit� de s'assurer de mani�re active de la
af84459fbf938e508fd10b01cb8d699c79083813takashi possibilit� de mise en cache d'URLs,
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> fournit des m�thodes pour la gestion
af84459fbf938e508fd10b01cb8d699c79083813takashi et l'�dition de fichiers en m�moire afin de maintenir un cache de fichiers
3c13a815670b54d1c17bf02954f7d2b066cde95cnd dans l'�tat o� ils �taient la derni�re
3c13a815670b54d1c17bf02954f7d2b066cde95cnd fois qu'httpd a d�marr�.
af84459fbf938e508fd10b01cb8d699c79083813takashi En tant que tel, <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> a �t� con�u pour am�liorer
af84459fbf938e508fd10b01cb8d699c79083813takashi le temps d'acc�s � des fichiers locaux statiques qui ne sont modifi�s
af84459fbf938e508fd10b01cb8d699c79083813takashi que rarement.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Etant donn� que <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> constitue une
af84459fbf938e508fd10b01cb8d699c79083813takashi impl�mentation de mise en cache relativement simple, mises � part les
0cf3cdbaa1dad11cbf1ce32e48f1b4ec88cf779fnilgun sections sp�cifiques sur les directives <code class="directive"><a href="/mod/mod_file_cache.html#cachefile">CacheFile</a></code> et <code class="directive"><a href="/mod/mod_file_cache.html#mmapfile">MMapFile</a></code>, les explications fournies
af84459fbf938e508fd10b01cb8d699c79083813takashi dans ce guide concernent l'architecture de mise en cache du
af84459fbf938e508fd10b01cb8d699c79083813takashi module <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Pour tirer parti efficacement de ce document, les bases de HTTP doivent
af84459fbf938e508fd10b01cb8d699c79083813takashi vous �tre famili�res, et vous devez avoir lu les sections
af84459fbf938e508fd10b01cb8d699c79083813takashi <a href="urlmapping.html">Mise en correspondance des
af84459fbf938e508fd10b01cb8d699c79083813takashi URLs avec le syst�me de fichiers</a> et
af84459fbf938e508fd10b01cb8d699c79083813takashi <a href="content-negotiation.html">N�gociation sur le contenu</a>
af84459fbf938e508fd10b01cb8d699c79083813takashi du guide de l'utilisateur.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="section">
af84459fbf938e508fd10b01cb8d699c79083813takashi<h2><a name="overview" id="overview">Vue d'ensemble de la mise en cache</a></h2>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <table class="related"><tr><th>Modules Apparent�s</th><th>Directives Apparent�es</th></tr><tr><td><ul><li><code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code></li><li><code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code></li><li><code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/mod_cache.html#cacheenable">CacheEnable</a></code></li><li><code class="directive"><a href="/mod/mod_cache.html#cachedisable">CacheDisable</a></code></li><li><code class="directive"><a href="/mod/mod_file_cache.html#cachefile">CacheFile</a></code></li><li><code class="directive"><a href="/mod/mod_file_cache.html#mmapfile">MMapFile</a></code></li><li><code class="directive"><a href="/mod/core.html#usecanonicalname">UseCanonicalName</a></code></li><li><code class="directive"><a href="/mod/mod_negotiation.html#cachenegotiateddocs">CacheNegotiatedDocs</a></code></li></ul></td></tr></table>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p><code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> peut faire intervenir deux phases
af84459fbf938e508fd10b01cb8d699c79083813takashi principales pendant la dur�e de vie d'une requ�te.
af84459fbf938e508fd10b01cb8d699c79083813takashi En premier lieu, <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi est un module de mise en correspondance d'URLs, ce qui signifie que si
af84459fbf938e508fd10b01cb8d699c79083813takashi une URL a �t� mise en cache, et que la version du cache de cette URL n'est
af84459fbf938e508fd10b01cb8d699c79083813takashi pas arriv�e � expiration, la requ�te sera trait�e directement par
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Ceci entra�ne que toutes autres actions qui se d�rouleraient normalement
af84459fbf938e508fd10b01cb8d699c79083813takashi au cours du processus de traitement d'une requ�te -- par exemple un
af84459fbf938e508fd10b01cb8d699c79083813takashi traitement effectu� par <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code>, ou
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> --
af84459fbf938e508fd10b01cb8d699c79083813takashi ne seront pas effectu�es. Mais c'est justement l'int�r�t
af84459fbf938e508fd10b01cb8d699c79083813takashi de la mise en cache pr�alable du contenu.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si l'URL ne se trouve pas dans le cache, <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi va ajouter un <a href="filter.html">filtre</a> au traitement de la requ�te.
3c13a815670b54d1c17bf02954f7d2b066cde95cnd Une fois le contenu localis� par httpd selon la conception courante, le
af84459fbf938e508fd10b01cb8d699c79083813takashi filtre sera ex�cut� en m�me temps que le contenu sera servi.
af84459fbf938e508fd10b01cb8d699c79083813takashi S'il est d�termin� que le contenu peut �tre mis en cache,
af84459fbf938e508fd10b01cb8d699c79083813takashi il sera sauvegard� dans le cache pour une utilisation future.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si l'URL se trouve dans le cache, mais est arriv�e � expiration,
af84459fbf938e508fd10b01cb8d699c79083813takashi le filtre est quand-m�me ajout�, mais <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> va cr�er
af84459fbf938e508fd10b01cb8d699c79083813takashi une requ�te conditionnelle en arri�re-plan, pour d�terminer si la version
af84459fbf938e508fd10b01cb8d699c79083813takashi du cache est encore � jour. Si la version du cache est encore � jour, ses
af84459fbf938e508fd10b01cb8d699c79083813takashi meta-informations seront mises � jour et la requ�te sera servie � partir du
af84459fbf938e508fd10b01cb8d699c79083813takashi cache. Si la version du contenu n'est plus � jour, elle sera supprim�e et le
af84459fbf938e508fd10b01cb8d699c79083813takashi filtre va sauvegarder le contenu mis � jour dans le cache
af84459fbf938e508fd10b01cb8d699c79083813takashi au moment o� il sera servi.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Am�lioration du taux de pr�sence dans le cache</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Lors de la mise en cache de contenu g�n�r� localement, le
af84459fbf938e508fd10b01cb8d699c79083813takashi positionnement de la directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/core.html#usecanonicalname">UseCanonicalName</a></code> �
af84459fbf938e508fd10b01cb8d699c79083813takashi <code>On</code> peut am�liorer de mani�re spectaculaire le taux de
af84459fbf938e508fd10b01cb8d699c79083813takashi pr�sence dans le cache. Ceci est du au fait que le nom d'h�te de l'h�te
af84459fbf938e508fd10b01cb8d699c79083813takashi virtuel qui sert le contenu constitue une partie de la cl� de cache.
af84459fbf938e508fd10b01cb8d699c79083813takashi Avec <code class="directive"><a href="/mod/core.html#usecanonicalname">UseCanonicalName</a></code> positionn�e
af84459fbf938e508fd10b01cb8d699c79083813takashi � <code>On</code>,
af84459fbf938e508fd10b01cb8d699c79083813takashi les h�tes virtuels poss�dant plusieurs noms de serveur ou alias ne
af84459fbf938e508fd10b01cb8d699c79083813takashi g�n�reront pas d'entit�s de cache diff�rentes, et le contenu sera mis en
af84459fbf938e508fd10b01cb8d699c79083813takashi cache en faisant r�f�rence au nom d'h�te canonique.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Les documents mis en cache ne seront servis qu'en r�ponse � des
af84459fbf938e508fd10b01cb8d699c79083813takashi requ�tes de type URL, car la mise en cache est effectu�e lors de la phase
af84459fbf938e508fd10b01cb8d699c79083813takashi de traduction de l'URL en nom de fichier.
af84459fbf938e508fd10b01cb8d699c79083813takashi En g�n�ral, cela n'a que peu d'effet, � moins que vous n'utilisiez les
af84459fbf938e508fd10b01cb8d699c79083813takashi <a href="howto/ssi.html">Inclusions C�t� Serveur (SSI)</a>;</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic <div class="example"><p><code>
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic&lt;!-- L'inclusion suivante peut �tre mise en cache --&gt;<br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic&lt;!--#include virtual="/footer.html" --&gt;<br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic<br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic&lt;!-- L'inclusion suivante ne peut pas �tre mise en cache --&gt;<br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic&lt;!--#include file="/path/to/footer.html" --&gt; <br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic </code></p></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si vous utilisez les SSI, et voulez b�n�ficier de la vitesse de
af84459fbf938e508fd10b01cb8d699c79083813takashi service depuis le cache, vous devez utiliser des inclusions de type
af84459fbf938e508fd10b01cb8d699c79083813takashi <code>virtual</code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>P�riodes d'expiration</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>La p�riode d'expiration par d�faut pour les entit�s du cache est
af84459fbf938e508fd10b01cb8d699c79083813takashi d'une heure; elle peut cependant �tre facilement modifi�e � l'aide de
af84459fbf938e508fd10b01cb8d699c79083813takashi la directive <code class="directive"><a href="/mod/mod_cache.html#cachedefaultexpire">CacheDefaultExpire</a></code>. Cette valeur par
af84459fbf938e508fd10b01cb8d699c79083813takashi d�faut n'est utilis�e que lorsque la source originale du contenu ne
af84459fbf938e508fd10b01cb8d699c79083813takashi pr�cise pas de p�riode d'expiration ou d'heure de derni�re
af84459fbf938e508fd10b01cb8d699c79083813takashi modification.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si une r�ponse ne contient pas d'en-t�te <code>Expires</code> mais
af84459fbf938e508fd10b01cb8d699c79083813takashi inclut un en-t�te <code>Last-Modified</code>, <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi peut d�duire une p�riode d'expiration en se basant sur la valeur de la
af84459fbf938e508fd10b01cb8d699c79083813takashi directive <code class="directive"><a href="/mod/mod_cache.html#cachelastmodifiedfactor">CacheLastModifiedFactor</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>La p�riode d'expiration des contenus locaux peut �tre ajust�e finement
af84459fbf938e508fd10b01cb8d699c79083813takashi en utilisant le module <code class="module"><a href="/mod/mod_expires.html">mod_expires</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>On peut aussi contr�ler la p�riode d'expiration maximale en utilisant
af84459fbf938e508fd10b01cb8d699c79083813takashi la directive <code class="directive"><a href="/mod/mod_cache.html#cachemaxexpire">CacheMaxExpire</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Guide succinct des requ�tes conditionnelles</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Lorsqu'un contenu est arriv� � expiration dans le cache et fait
af84459fbf938e508fd10b01cb8d699c79083813takashi l'objet d'une nouvelle demande d'acc�s, plut�t que traiter directement
3c13a815670b54d1c17bf02954f7d2b066cde95cnd la requ�te originale, httpd pr�f�re utiliser une
af84459fbf938e508fd10b01cb8d699c79083813takashi requ�te conditionnelle.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>HTTP propose toute une panoplie d'en-t�tes qui permettent � un client,
af84459fbf938e508fd10b01cb8d699c79083813takashi ou au cache de distinguer les diff�rentes versions d'un m�me contenu. Par
af84459fbf938e508fd10b01cb8d699c79083813takashi exemple, si une ressource a �t� servie avec un en-t�te "Etag:", il est
af84459fbf938e508fd10b01cb8d699c79083813takashi possible de cr�er une requ�te conditionnelle contenant un en-t�te
af84459fbf938e508fd10b01cb8d699c79083813takashi "If-None-Match:". Si une ressource a �t� servie avec un en-t�te
af84459fbf938e508fd10b01cb8d699c79083813takashi "Last-Modified:", il est possible de cr�er une requ�te conditionnelle
af84459fbf938e508fd10b01cb8d699c79083813takashi contenant un en-t�te "If-Modified-Since:", etc....</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Lorsqu'une telle requ�te conditionnelle est cr��e, la reponse diff�re
af84459fbf938e508fd10b01cb8d699c79083813takashi selon que le contenu satisfait ou non aux conditions. Si une requ�te est
af84459fbf938e508fd10b01cb8d699c79083813takashi cr��e avec un en-t�te "If-Modified-Since:", et le contenu n'a pas �t�
af84459fbf938e508fd10b01cb8d699c79083813takashi modifi� depuis le moment indiqu� dans la requ�te, alors un laconique
af84459fbf938e508fd10b01cb8d699c79083813takashi "304 Not Modified" est retourn�.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si le contenu a �t� modifi�, il est servi comme si la requ�te n'avait
af84459fbf938e508fd10b01cb8d699c79083813takashi pas �t� conditionnelle � l'origine.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Les b�n�fices des requ�tes conditionnelles pour ce qui concerne la
af84459fbf938e508fd10b01cb8d699c79083813takashi mise en cache sont de deux sortes. Premi�rement, quand une telle requ�te
af84459fbf938e508fd10b01cb8d699c79083813takashi est envoy�e au processus en arri�re-plan, il sera ais� de d�terminer
af84459fbf938e508fd10b01cb8d699c79083813takashi si le contenu que devra servir le processus en arri�re-plan correspond
af84459fbf938e508fd10b01cb8d699c79083813takashi au contenu stock� dans le cache, sans �tre oblig� de transmettre la
af84459fbf938e508fd10b01cb8d699c79083813takashi totalit� de la ressource.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Deuxi�mement, les requ�tes conditionnelles sont en g�n�ral moins
af84459fbf938e508fd10b01cb8d699c79083813takashi co�teuses en ressources pour le processus en arri�re-plan.
af84459fbf938e508fd10b01cb8d699c79083813takashi Pour ce qui est des fichiers
af84459fbf938e508fd10b01cb8d699c79083813takashi statiques, l'action type est un appel � <code>stat()</code> ou un appel
af84459fbf938e508fd10b01cb8d699c79083813takashi syst�me similaire, pour d�terminer si la taille du fichier ou sa date de
3c13a815670b54d1c17bf02954f7d2b066cde95cnd modification ont chang�. Ainsi, m�me si httpd met en cache le contenu
af84459fbf938e508fd10b01cb8d699c79083813takashi local, un contenu arriv� � expiration pourra �tre servi plus rapidement
af84459fbf938e508fd10b01cb8d699c79083813takashi depuis le cache s'il n'a pas �t� modifi�, parce que la lecture depuis le
af84459fbf938e508fd10b01cb8d699c79083813takashi cache est plus rapide que la lecture depuis le processus en arri�re-plan
af84459fbf938e508fd10b01cb8d699c79083813takashi (� comparer � la diff�rence de vitesse entre la lecture depuis un cache en
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin m�moire avec <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code> et la lecture depuis un disque).</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Que peut-on mettre en cache ?</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
3c13a815670b54d1c17bf02954f7d2b066cde95cnd <p>Comme mentionn� plus haut, les deux styles de mise en
3c13a815670b54d1c17bf02954f7d2b066cde95cnd cache de httpd
af84459fbf938e508fd10b01cb8d699c79083813takashi fonctionnent diff�remment; la mise en cache de
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> conserve les contenus des fichiers
3c13a815670b54d1c17bf02954f7d2b066cde95cnd tels qu'ils �taient au d�marrage de httpd. Quand une requ�te pour un
af84459fbf938e508fd10b01cb8d699c79083813takashi fichier mis en cache par ce module est envoy�e, elle est intercept�e
af84459fbf938e508fd10b01cb8d699c79083813takashi et le fichier mis en cache est servi.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>La mise en cache de <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>, quant � elle, est
af84459fbf938e508fd10b01cb8d699c79083813takashi plus complexe. Lors du traitement d'une requ�te, le module de mise en
af84459fbf938e508fd10b01cb8d699c79083813takashi cache d�terminera si le contenu peut �tre mis en cache, s'il ne l'a
af84459fbf938e508fd10b01cb8d699c79083813takashi pas d�j� �t� auparavant. Les conditions qui permettent de d�terminer
af84459fbf938e508fd10b01cb8d699c79083813takashi la possibilit� de mise en cache d'une r�ponse sont :</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <ol>
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>La mise en cache doit �tre activ�e pour cette URL. Voir les
af84459fbf938e508fd10b01cb8d699c79083813takashi directives <code class="directive"><a href="/mod/mod_cache.html#cacheenable">CacheEnable</a></code> et <code class="directive"><a href="/mod/mod_cache.html#cachedisable">CacheDisable</a></code>.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>La reponse doit avoir un code de statut HTTP de 200, 203, 300, 301
af84459fbf938e508fd10b01cb8d699c79083813takashi ou 410.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>La requ�te doit �tre de type HTTP GET.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>Si la requ�te contient un en-t�te "Authorization:", la r�ponse ne
af84459fbf938e508fd10b01cb8d699c79083813takashi sera pas mise en cache.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>Si la r�ponse contient un en-t�te "Authorization:", elle doit aussi
af84459fbf938e508fd10b01cb8d699c79083813takashi contenir une option "s-maxage", "must-revalidate" ou "public"
af84459fbf938e508fd10b01cb8d699c79083813takashi dans l'en-t�te "Cache-Control:".</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun <li>Si l'URL contient une cha�ne de requ�te
af84459fbf938e508fd10b01cb8d699c79083813takashi (provenant par exemple d'une m�thode GET de formulaire HTML), elle ne
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun sera pas mise en cache, � moins que la r�ponse ne
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun sp�cifie explicitement un d�lai d'expiration via un
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun en-t�te "Expires:" ou une directive max-age ou s-maxage de
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun l'en-t�te "Cache-Control:" comme indiqu� dans les
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun sections 13.2.1. et 13.9 de la RFC2616.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>Si la r�ponse a un statut de 200 (OK), elle doit aussi contenir
af84459fbf938e508fd10b01cb8d699c79083813takashi au moins un des en-t�tes "Etag", "Last-Modified" ou
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun "Expires", ou une directive max-age ou s-maxage de
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun l'en-t�te "Cache-Control:", � moins que la directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/mod_cache.html#cacheignorenolastmod">CacheIgnoreNoLastMod</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi ne pr�cise d'autres contraintes.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>Si la r�ponse contient l'option "private" dans un en-t�te
af84459fbf938e508fd10b01cb8d699c79083813takashi "Cache-Control:", elle ne sera pas mise en cache � moins que la
af84459fbf938e508fd10b01cb8d699c79083813takashi directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/mod_cache.html#cachestoreprivate">CacheStorePrivate</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi ne pr�cise d'autres contraintes.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>De m�me, si la r�ponse contient l'option "no-store" dans un en-t�te
af84459fbf938e508fd10b01cb8d699c79083813takashi "Cache-Control:", elle ne sera pas mise en cache � moins que la
af84459fbf938e508fd10b01cb8d699c79083813takashi directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/mod_cache.html#cachestorenostore">CacheStoreNoStore</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi n'ait �t� utilis�e.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <li>Une r�ponse ne sera pas mise en cache si elle comporte un en-t�te
af84459fbf938e508fd10b01cb8d699c79083813takashi "Vary:" contenant le caract�re "*" qui correspond � toute
af84459fbf938e508fd10b01cb8d699c79083813takashi cha�ne de caract�res.</li>
af84459fbf938e508fd10b01cb8d699c79083813takashi </ol>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Qu'est ce qui ne doit pas �tre mis en cache ?</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>En bref, tout contenu qui varie beaucoup avec le temps, ou en fonction
af84459fbf938e508fd10b01cb8d699c79083813takashi de particularit�s de la requ�te qui ne sont pas couvertes par la
af84459fbf938e508fd10b01cb8d699c79083813takashi n�gociation HTTP, ne doit pas �tre mis en cache.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Un contenu dynamique qui varie en fonction de l'adresse IP du
af84459fbf938e508fd10b01cb8d699c79083813takashi demandeur, ou est modifi� toutes les 5 minutes, ne devra en g�n�ral
af84459fbf938e508fd10b01cb8d699c79083813takashi pas �tre mis en cache.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si par contre le contenu servi diff�re en fonction de la valeur de
af84459fbf938e508fd10b01cb8d699c79083813takashi divers en-t�tes HTTP, il se peut que l'on puisse le mettre en cache
af84459fbf938e508fd10b01cb8d699c79083813takashi intelligemment en utilisant un en-t�te "Vary".</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Contenu variable et/ou n�goci�</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> re�oit une r�ponse contenant un en-t�te
af84459fbf938e508fd10b01cb8d699c79083813takashi "Vary", lorsqu'un contenu a �t� demand� par un processus d'arri�re-plan,
af84459fbf938e508fd10b01cb8d699c79083813takashi il va s'efforcer de la traiter intelligemment. Si possible,
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> va d�tecter les en-t�tes attribu�s dans la
af84459fbf938e508fd10b01cb8d699c79083813takashi r�ponse "Vary" � l'occasion des futures demandes, et servir une r�ponse
af84459fbf938e508fd10b01cb8d699c79083813takashi correcte � partir du cache.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si par exemple, une r�ponse est re�ue avec l'en-t�te Vary suivant,</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <div class="example"><p><code>
af84459fbf938e508fd10b01cb8d699c79083813takashiVary: negotiate,accept-language,accept-charset
af84459fbf938e508fd10b01cb8d699c79083813takashi </code></p></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p><code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> ne servira aux demandeurs que le contenu
af84459fbf938e508fd10b01cb8d699c79083813takashi mis en cache qui correspond au contenu des en-t�tes accept-language et
af84459fbf938e508fd10b01cb8d699c79083813takashi accept-charset de la requ�te originale.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="section">
af84459fbf938e508fd10b01cb8d699c79083813takashi<h2><a name="security" id="security">Consid�rations sur la s�curit�</a></h2>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Autorisation et contr�le d'acc�s</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Utiliser <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> revient sensiblement � la m�me
af84459fbf938e508fd10b01cb8d699c79083813takashi chose qu'avoir un mandataire inverse int�gr� (reverse-proxy). Les requ�tes
af84459fbf938e508fd10b01cb8d699c79083813takashi seront servies par le module de mise en cache sauf si ce dernier
af84459fbf938e508fd10b01cb8d699c79083813takashi d�termine qu'un processus d'arri�re-plan doit �tre appel�. La mise en
af84459fbf938e508fd10b01cb8d699c79083813takashi cache de ressources locales modifie consid�rablement le mod�le de
3c13a815670b54d1c17bf02954f7d2b066cde95cnd s�curit� de httpd.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Comme le parcours de la hi�rarchie d'un syst�me de fichiers pour
af84459fbf938e508fd10b01cb8d699c79083813takashi examiner le contenu d'�ventuels fichiers
af84459fbf938e508fd10b01cb8d699c79083813takashi <code>.htaccess</code> serait une op�ration tr�s co�teuse en ressources,
af84459fbf938e508fd10b01cb8d699c79083813takashi annulant partiellement de ce fait l'int�r�t de la mise en cache
af84459fbf938e508fd10b01cb8d699c79083813takashi (acc�l�rer le traitement des requ�tes),
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> ne se pr�occupe pas de savoir s'il a
af84459fbf938e508fd10b01cb8d699c79083813takashi l'autorisation de servir une entit� mise en cache. En d'autres termes,
af84459fbf938e508fd10b01cb8d699c79083813takashi si <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> a mis en cache un certain contenu, ce
af84459fbf938e508fd10b01cb8d699c79083813takashi dernier sera servi � partir du cache tant qu'il ne sera pas arriv� �
af84459fbf938e508fd10b01cb8d699c79083813takashi expiration.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si par exemple, votre configuration autorise l'acc�s � une ressource
af84459fbf938e508fd10b01cb8d699c79083813takashi en fonction de l'adresse IP, vous devez vous assurer que ce contenu n'est
af84459fbf938e508fd10b01cb8d699c79083813takashi pas mis en cache. Ceci est possible en utilisant la directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/mod_cache.html#cachedisable">CacheDisable</a></code>, ou le module
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_expires.html">mod_expires</a></code>. Livr� � lui-m�me,
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> - pratiquement comme un mandataire inverse -
af84459fbf938e508fd10b01cb8d699c79083813takashi mettrait en cache le contenu lors de son service, et le servirait ensuite
af84459fbf938e508fd10b01cb8d699c79083813takashi � tout client, vers n'importe quelle adresse IP.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Piratages locaux</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Etant donn� que les requ�tes des utilisateurs finaux peuvent �tre
af84459fbf938e508fd10b01cb8d699c79083813takashi servies depuis le cache, ce dernier est une cible potentielle pour ceux
af84459fbf938e508fd10b01cb8d699c79083813takashi qui veulent d�figurer un contenu ou interf�rer avec lui. Il est important
3c13a815670b54d1c17bf02954f7d2b066cde95cnd de garder � l'esprit que l'utilisateur sous lequel tourne
3c13a815670b54d1c17bf02954f7d2b066cde95cnd httpd doit
af84459fbf938e508fd10b01cb8d699c79083813takashi toujours avoir l'acc�s en �criture dans le cache. Ceci est en contraste
af84459fbf938e508fd10b01cb8d699c79083813takashi total avec la recommandation usuelle d'interdire � l'utilisateur sous
af84459fbf938e508fd10b01cb8d699c79083813takashi lequel tourne Apache
af84459fbf938e508fd10b01cb8d699c79083813takashi l'acc�s en �criture � tout contenu.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si l'utilisateur sous lequel tourne Apache est compromis,
af84459fbf938e508fd10b01cb8d699c79083813takashi par exemple � cause d'une
af84459fbf938e508fd10b01cb8d699c79083813takashi faille de s�curit� dans un processus CGI, il est possible que le cache
af84459fbf938e508fd10b01cb8d699c79083813takashi fasse l'objet d'une attaque. Il est relativement ais� d'ins�rer ou de
af84459fbf938e508fd10b01cb8d699c79083813takashi modifier une entit� dans le cache en utilisant le module
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Cela repr�sente un risque relativement �l�v� par rapport aux autres
af84459fbf938e508fd10b01cb8d699c79083813takashi types d'attaques qu'il est possible de mener sous l'utilisateur apache.
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin Si vous utilisez <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code>, vous devez garder ceci
3c13a815670b54d1c17bf02954f7d2b066cde95cnd � l'esprit : effectuez toujours les mises � jour de
3c13a815670b54d1c17bf02954f7d2b066cde95cnd httpdquand des
af84459fbf938e508fd10b01cb8d699c79083813takashi correctifs de s�curit� sont annonc�s et ex�cutez les processus CGI sous
af84459fbf938e508fd10b01cb8d699c79083813takashi un utilisateur autre qu'apache en utilisant
af84459fbf938e508fd10b01cb8d699c79083813takashi <a href="suexec.html">suEXEC</a> dans la mesure du possible.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Empoisonnement du cache (Cache Poisoning)</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
3c13a815670b54d1c17bf02954f7d2b066cde95cnd <p>Si vous utilisez httpd comme serveur mandataire avec mise en cache,
af84459fbf938e508fd10b01cb8d699c79083813takashi vous vous exposez aussi � un �ventuel "Empoisonnement du
af84459fbf938e508fd10b01cb8d699c79083813takashi cache" (Cache poisoning). L'empoisonnement du cache est un terme g�n�ral
af84459fbf938e508fd10b01cb8d699c79083813takashi pour d�signer les attaques au cours desquelles l'attaquant fait en sorte
af84459fbf938e508fd10b01cb8d699c79083813takashi que le serveur mandataire renvoie � un contenu incorrect (et souvent
af84459fbf938e508fd10b01cb8d699c79083813takashi ind�sirable) suite � en provenance du serveur d'arri�re-plan.
af84459fbf938e508fd10b01cb8d699c79083813takashi </p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Par exemple, si les serveur DNS qu'utilise votre syst�me o� tourne
3c13a815670b54d1c17bf02954f7d2b066cde95cnd httpd sont vuln�rables � l'empoisonnement du cache des DNS, un attaquant
3c13a815670b54d1c17bf02954f7d2b066cde95cnd pourra contr�ler vers o� httpd se connecte lorsqu'il demande un contenu
af84459fbf938e508fd10b01cb8d699c79083813takashi depuis le serveur d'origine.
af84459fbf938e508fd10b01cb8d699c79083813takashi Un autre exemple est constitu� par les attaques ainsi nomm�es
af84459fbf938e508fd10b01cb8d699c79083813takashi "Dissimulation de requ�tes HTTP" (HTTP request-smuggling).</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Ce document n'est pas le bon endroit pour une discussion approfondie
af84459fbf938e508fd10b01cb8d699c79083813takashi � propos de la Dissimulation de requ�tes HTTP (utilisez plut�t votre
af84459fbf938e508fd10b01cb8d699c79083813takashi moteur de recherche favori); il est cependant important de savoir qu'il
af84459fbf938e508fd10b01cb8d699c79083813takashi est possible d'�laborer une s�rie de requ�tes, et d'exploiter une
af84459fbf938e508fd10b01cb8d699c79083813takashi vuln�rabilit� d'un serveur web d'origine de telle fa�on que l'attaquant
af84459fbf938e508fd10b01cb8d699c79083813takashi puisse contr�ler enti�rement le contenu renvoy� par le mandataire.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="section">
af84459fbf938e508fd10b01cb8d699c79083813takashi<h2><a name="filehandle" id="filehandle">Mise en cache de la gestion de fichier</a></h2>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
cd6c8de3bedcc401ee230159b0439fa20f44488etakashi <table class="related"><tr><th>Modules Apparent�s</th><th>Directives Apparent�es</th></tr><tr><td><ul><li><code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/mod_file_cache.html#cachefile">CacheFile</a></code></li></ul></td></tr></table>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Le fait d'ouvrir un fichier peut en lui-m�me introduire un d�lai,
3c13a815670b54d1c17bf02954f7d2b066cde95cnd en particulier dans les syst�mes de fichiers r�partis
3c13a815670b54d1c17bf02954f7d2b066cde95cnd sur le r�seau. httpd
af84459fbf938e508fd10b01cb8d699c79083813takashi peut s'affranchir de ce d�lai en maintenant
af84459fbf938e508fd10b01cb8d699c79083813takashi un cache des descripteurs de fichiers
3c13a815670b54d1c17bf02954f7d2b066cde95cnd ouverts pour ce qui concerne les fichiers souvent
3c13a815670b54d1c17bf02954f7d2b066cde95cnd acc�d�s. httpd propose
cd6c8de3bedcc401ee230159b0439fa20f44488etakashi actuellement une impl�mentation de mise en cache de la
af84459fbf938e508fd10b01cb8d699c79083813takashi gestion de fichier.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Directive CacheFile</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
3c13a815670b54d1c17bf02954f7d2b066cde95cnd <p>La forme la plus �l�mentaire de mise en cache que
3c13a815670b54d1c17bf02954f7d2b066cde95cnd propose httpd est
af84459fbf938e508fd10b01cb8d699c79083813takashi fournie par le module <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code>.
af84459fbf938e508fd10b01cb8d699c79083813takashi Plut�t que de mettre en cache le contenu des fichiers, ce cache maintient
af84459fbf938e508fd10b01cb8d699c79083813takashi une table des descripteurs de fichiers ouverts. Les fichiers � mettre en
af84459fbf938e508fd10b01cb8d699c79083813takashi cache de cette mani�re sont sp�cifi�s dans le fichier de configuration
af84459fbf938e508fd10b01cb8d699c79083813takashi en utilisant la directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/mod_file_cache.html#cachefile">CacheFile</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>La directive
3c13a815670b54d1c17bf02954f7d2b066cde95cnd <code class="directive"><a href="/mod/mod_file_cache.html#cachefile">CacheFile</a></code> demande
3c13a815670b54d1c17bf02954f7d2b066cde95cnd � httpd
af84459fbf938e508fd10b01cb8d699c79083813takashi d'ouvrir le fichier lors de son d�marrage et de r�utiliser le descripteur
af84459fbf938e508fd10b01cb8d699c79083813takashi de fichier �labor� � cette occasion pour tous les
af84459fbf938e508fd10b01cb8d699c79083813takashi acc�s ult�rieurs � ce fichier.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic <div class="example"><p><code>
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic CacheFile /usr/local/apache2/htdocs/index.html
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic </code></p></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Si vous avez l'intention de mettre en cache un grand nombre de
af84459fbf938e508fd10b01cb8d699c79083813takashi fichiers de cette mani�re, vous devez vous assurer que le nombre maximum
af84459fbf938e508fd10b01cb8d699c79083813takashi de fichiers ouverts par votre syst�me d'exploitation est correctement
af84459fbf938e508fd10b01cb8d699c79083813takashi d�fini.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Bien que l'utilisation de la directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/mod_file_cache.html#cachefile">CacheFile</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi n'entra�ne pas la mise en cache du contenu du fichier, cela ne signifie
3c13a815670b54d1c17bf02954f7d2b066cde95cnd pas qu'en cas de modification du fichier pendant
3c13a815670b54d1c17bf02954f7d2b066cde95cnd l'ex�cution de httpd,
af84459fbf938e508fd10b01cb8d699c79083813takashi ces changements seront pris en compte. Le fichier sera toujours servi
3c13a815670b54d1c17bf02954f7d2b066cde95cnd dans l'�tat o� il �tait quand httpd a d�marr�.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
3c13a815670b54d1c17bf02954f7d2b066cde95cnd <p>Si le fichier est supprim� pendant l'ex�cution de
3c13a815670b54d1c17bf02954f7d2b066cde95cnd httpd, ce dernier
af84459fbf938e508fd10b01cb8d699c79083813takashi continuera � maintenir un descripteur de fichier ouvert et � servir le
3c13a815670b54d1c17bf02954f7d2b066cde95cnd fichier dans l'�tat o� il �tait quand httpd a d�marr�. Cela signifie
af84459fbf938e508fd10b01cb8d699c79083813takashi aussi habituellement que malgr� le fait que le fichier ait �t� supprim�,
af84459fbf938e508fd10b01cb8d699c79083813takashi et ne soit
af84459fbf938e508fd10b01cb8d699c79083813takashi plus accessible par le syst�me de fichiers, l'espace lib�r� ne sera
3c13a815670b54d1c17bf02954f7d2b066cde95cnd restitu� qu'� l'arr�t de httpd quand le
af84459fbf938e508fd10b01cb8d699c79083813takashi descripteur de fichier sera ferm�.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
9a58dc6a2b26ec128b1270cf48810e705f1a90dbsf
af84459fbf938e508fd10b01cb8d699c79083813takashi </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="section">
af84459fbf938e508fd10b01cb8d699c79083813takashi<h2><a name="inmemory" id="inmemory">Mise en cache en m�moire</a></h2>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
0cf3cdbaa1dad11cbf1ce32e48f1b4ec88cf779fnilgun <table class="related"><tr><th>Modules Apparent�s</th><th>Directives Apparent�es</th></tr><tr><td><ul><li><code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/mod_cache.html#cacheenable">CacheEnable</a></code></li><li><code class="directive"><a href="/mod/mod_cache.html#cachedisable">CacheDisable</a></code></li><li><code class="directive"><a href="/mod/mod_file_cache.html#mmapfile">MMapFile</a></code></li></ul></td></tr></table>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Servir un contenu directement depuis la m�moire syst�me est
af84459fbf938e508fd10b01cb8d699c79083813takashi universellement reconnu comme la m�thode la plus rapide. Lire des fichiers
af84459fbf938e508fd10b01cb8d699c79083813takashi depuis un contr�leur de disque ou pire, depuis un r�seau distant est plus
af84459fbf938e508fd10b01cb8d699c79083813takashi lent de plusieurs ordres de grandeur. Les contr�leurs de disque r�alisent
af84459fbf938e508fd10b01cb8d699c79083813takashi en g�n�ral des op�rations m�caniques, et l'acc�s au r�seau est limit� par la
af84459fbf938e508fd10b01cb8d699c79083813takashi bande passante dont vous disposez. Par contre, les temps d'acc�s � la
af84459fbf938e508fd10b01cb8d699c79083813takashi m�moire sont de l'ordre de la nano-seconde.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Cependant la m�moire syst�me n'est pas bon march�; � capacit� �gale,
af84459fbf938e508fd10b01cb8d699c79083813takashi c'est de loin le type de stockage le plus co�teux et il est important de
af84459fbf938e508fd10b01cb8d699c79083813takashi s'assurer qu'elle est utilis�e efficacement. Le fait de mettre en cache
af84459fbf938e508fd10b01cb8d699c79083813takashi des fichiers en m�moire diminue d'autant la quantit� de m�moire syst�me
af84459fbf938e508fd10b01cb8d699c79083813takashi disponible. Comme nous le verrons plus loin, ce n'est pas un probl�me en
af84459fbf938e508fd10b01cb8d699c79083813takashi soi dans le cas de la mise en cache par l'interm�diaire du syst�me
af84459fbf938e508fd10b01cb8d699c79083813takashi d'exploitation, mais si l'on utilise la mise en cache en m�moire propre �
3c13a815670b54d1c17bf02954f7d2b066cde95cnd httpd, il faut prendre garde � ne pas allouer trop de m�moire au cache.
af84459fbf938e508fd10b01cb8d699c79083813takashi Sinon le syst�me sera contraint d'utiliser le swap, ce qui d�gradera
af84459fbf938e508fd10b01cb8d699c79083813takashi sensiblement les performances.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Mise en cache par l'interm�diaire du syst�me d'exploitation</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Dans la plupart des syst�mes d'exploitation modernes, c'est le noyau
af84459fbf938e508fd10b01cb8d699c79083813takashi qui g�re directement la mise en cache en m�moire des donn�es relatives
af84459fbf938e508fd10b01cb8d699c79083813takashi aux fichiers. C'est une fonctionnalit� puissante, et les syst�mes
af84459fbf938e508fd10b01cb8d699c79083813takashi d'exploitation s'en acquittent fort bien pour la plus grande partie.
af84459fbf938e508fd10b01cb8d699c79083813takashi Consid�rons par exemple, dans le cas de Linux, la diff�rence entre le
af84459fbf938e508fd10b01cb8d699c79083813takashi temps n�cessaire � la premi�re lecture d'un fichier et le temps
af84459fbf938e508fd10b01cb8d699c79083813takashi n�cessaire � sa deuxi�me lecture;</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <div class="example"><pre>
af84459fbf938e508fd10b01cb8d699c79083813takashicolm@coroebus:~$ time cat testfile &gt; /dev/null
af84459fbf938e508fd10b01cb8d699c79083813takashireal 0m0.065s
af84459fbf938e508fd10b01cb8d699c79083813takashiuser 0m0.000s
af84459fbf938e508fd10b01cb8d699c79083813takashisys 0m0.001s
af84459fbf938e508fd10b01cb8d699c79083813takashicolm@coroebus:~$ time cat testfile &gt; /dev/null
af84459fbf938e508fd10b01cb8d699c79083813takashireal 0m0.003s
af84459fbf938e508fd10b01cb8d699c79083813takashiuser 0m0.003s
af84459fbf938e508fd10b01cb8d699c79083813takashisys 0m0.000s</pre></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>M�me pour ce petit fichier, il y a une grande diff�rence entre les
af84459fbf938e508fd10b01cb8d699c79083813takashi temps n�cessaires pour lire le fichier. Ceci est du au fait que le
af84459fbf938e508fd10b01cb8d699c79083813takashi noyau a mis en cache le contenu du fichier en m�moire.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Du fait de toujours pouvoir disposer de m�moire syst�me, vous pouvez
af84459fbf938e508fd10b01cb8d699c79083813takashi �tre assur� qu'il y aura de plus en plus de contenus de fichiers stock�s
af84459fbf938e508fd10b01cb8d699c79083813takashi dans ce cache. Ceci peut s'av�rer une m�thode de mise en cache en m�moire
af84459fbf938e508fd10b01cb8d699c79083813takashi tr�s efficace, et ne n�cessite aucune configuration suppl�mentaire
3c13a815670b54d1c17bf02954f7d2b066cde95cnd de httpd.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>De plus, comme le syst�me d'exploitation sait si des fichiers
af84459fbf938e508fd10b01cb8d699c79083813takashi ont �t�
af84459fbf938e508fd10b01cb8d699c79083813takashi supprim�s ou modifi�s, il peut effacer automatiquement des contenus de
af84459fbf938e508fd10b01cb8d699c79083813takashi fichiers du cache lorsque cela s'av�re n�cessaire. Ceci constitue un gros
3c13a815670b54d1c17bf02954f7d2b066cde95cnd avantage par rapport � la mise en cache en m�moire
3c13a815670b54d1c17bf02954f7d2b066cde95cnd de httpd qui n'a
af84459fbf938e508fd10b01cb8d699c79083813takashi aucune possibilit� de savoir si un fichier a �t� modifi�.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>En d�pit des performances et des avantages de la mise en cache
af84459fbf938e508fd10b01cb8d699c79083813takashi automatique par le syst�me d'exploitation, la mise en cache en m�moire
3c13a815670b54d1c17bf02954f7d2b066cde95cnd peut �tre effectu�e plus efficacement par httpd dans certaines
af84459fbf938e508fd10b01cb8d699c79083813takashi circonstances.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
0cf3cdbaa1dad11cbf1ce32e48f1b4ec88cf779fnilgun <h3>Mise en cache � l'aide de la directive MMapFile</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
0cf3cdbaa1dad11cbf1ce32e48f1b4ec88cf779fnilgun <p>La directive <code class="directive"><a href="/mod/mod_file_cache.html#mmapfile">MMapFile</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi fournie par le module <code class="module"><a href="/mod/mod_file_cache.html">mod_file_cache</a></code> vous permet de
3c13a815670b54d1c17bf02954f7d2b066cde95cnd demander � httpd de charger un contenu de fichier statique en m�moire
3c13a815670b54d1c17bf02954f7d2b066cde95cnd lors de son d�marrage (� l'aide de l'appel
3c13a815670b54d1c17bf02954f7d2b066cde95cnd syst�me mmap). httpd
af84459fbf938e508fd10b01cb8d699c79083813takashi utilisera le contenu charg� en m�moire pour satisfaire ult�rieurement
af84459fbf938e508fd10b01cb8d699c79083813takashi toutes les demandes d'acc�s � ce fichier.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic <div class="example"><p><code>
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic MMapFile /usr/local/apache2/htdocs/index.html
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic </code></p></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Comme dans le cas de la directive
af84459fbf938e508fd10b01cb8d699c79083813takashi <code class="directive"><a href="/mod/mod_file_cache.html#cachefile">CacheFile</a></code>, toute
3c13a815670b54d1c17bf02954f7d2b066cde95cnd modification du fichier ne sera plus prise en compte par httpd une fois
af84459fbf938e508fd10b01cb8d699c79083813takashi ce dernier d�marr�.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p> La directive
0cf3cdbaa1dad11cbf1ce32e48f1b4ec88cf779fnilgun <code class="directive"><a href="/mod/mod_file_cache.html#mmapfile">MMapFile</a></code> ne gardant
af84459fbf938e508fd10b01cb8d699c79083813takashi pas la trace de la quantit� de m�moire qu'elle alloue, vous devez prendre
3c13a815670b54d1c17bf02954f7d2b066cde95cnd garde de ne pas en abuser. Chaque processus enfant de httpd utilisant
af84459fbf938e508fd10b01cb8d699c79083813takashi sa propre r�plique de la m�moire allou�e, il est donc d'une importance
af84459fbf938e508fd10b01cb8d699c79083813takashi critique de s'assurer que les fichiers charg�s ne sont pas d'une taille
af84459fbf938e508fd10b01cb8d699c79083813takashi trop importante afin d'�pargner au syst�me l'utilisation du swap.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
9a58dc6a2b26ec128b1270cf48810e705f1a90dbsf
af84459fbf938e508fd10b01cb8d699c79083813takashi </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="section">
af84459fbf938e508fd10b01cb8d699c79083813takashi<h2><a name="disk" id="disk">Mise en cache sur disque</a></h2>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <table class="related"><tr><th>Modules Apparent�s</th><th>Directives Apparent�es</th></tr><tr><td><ul><li><code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/mod_cache.html#cacheenable">CacheEnable</a></code></li><li><code class="directive"><a href="/mod/mod_cache.html#cachedisable">CacheDisable</a></code></li></ul></td></tr></table>
af84459fbf938e508fd10b01cb8d699c79083813takashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <p>Le module <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code> fournit un m�canisme de mise
cd6c8de3bedcc401ee230159b0439fa20f44488etakashi en cache sur disque au module <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code>. Cette mise en cache est
af84459fbf938e508fd10b01cb8d699c79083813takashi intelligente et le contenu ne sera servi qu'� partir du cache tant qu'il
af84459fbf938e508fd10b01cb8d699c79083813takashi sera consid�r� comme valide.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Typiquement, le module sera configur� comme suit :</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic <div class="example"><p><code>
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalicCacheRoot /var/cache/apache/<br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalicCacheEnable disk /<br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalicCacheDirLevels 2<br />
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalicCacheDirLength 1
8e9c6d6438af1ccb46adaa60d34caa3ac98f3851igalic </code></p></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Il est important de savoir que, les fichiers mis en cache �tant stock�s
af84459fbf938e508fd10b01cb8d699c79083813takashi localement, la mise en cache par l'interm�diaire du syst�me d'exploitation
af84459fbf938e508fd10b01cb8d699c79083813takashi sera en g�n�ral aussi appliqu�e � leurs acc�s. Si bien que m�me si les
af84459fbf938e508fd10b01cb8d699c79083813takashi fichiers sont stock�s sur disque, s'il font l'objet d'acc�s fr�quents,
af84459fbf938e508fd10b01cb8d699c79083813takashi il est probable que le syst�me d'exploitation s'appliquera � ce qu'ils
af84459fbf938e508fd10b01cb8d699c79083813takashi soient servis � partir de la m�moire.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Comprendre le stockage dans le cache</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Pour stocker des entit�s dans le cache,
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin le module <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code> cr�e une empreinte (hash) de 22
af84459fbf938e508fd10b01cb8d699c79083813takashi caract�res de l'URL qui a fait l'objet d'une requ�te. Cette empreinte
af84459fbf938e508fd10b01cb8d699c79083813takashi comprend le nom d'h�te, le protocole, le port, le chemin et tout argument
af84459fbf938e508fd10b01cb8d699c79083813takashi de type CGI associ� � l'URL, afin d'�tre sur que plusieurs URLs
af84459fbf938e508fd10b01cb8d699c79083813takashi n'interf�rent pas entre elles.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Chaque position de l'empreinte peut contenir un caract�re
af84459fbf938e508fd10b01cb8d699c79083813takashi choisi parmi 64 caract�res diff�rents, il y a donc
af84459fbf938e508fd10b01cb8d699c79083813takashi 64^22 possibilit�s pour une empreinte. Par exemple, une URL peut poss�der
af84459fbf938e508fd10b01cb8d699c79083813takashi l'empreinte <code>xyTGxSMO2b68mBCykqkp1w</code>. Cette empreinte est
af84459fbf938e508fd10b01cb8d699c79083813takashi utilis�e pour pr�fixer les noms de fichiers sp�cifiques � cette URL �
af84459fbf938e508fd10b01cb8d699c79083813takashi l'int�rieur du cache; cependant, elle est tout d'abord plac�e dans les
af84459fbf938e508fd10b01cb8d699c79083813takashi r�pertoires du cache selon les directives
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="directive"><a href="/mod/mod_cache_disk.html#cachedirlevels">CacheDirLevels</a></code> et
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="directive"><a href="/mod/mod_cache_disk.html#cachedirlength">CacheDirLength</a></code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>La directive
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="directive"><a href="/mod/mod_cache_disk.html#cachedirlevels">CacheDirLevels</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi d�finit le nombre de niveaux de sous-r�pertoires, et
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="directive"><a href="/mod/mod_cache_disk.html#cachedirlength">CacheDirLength</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi le nombre de caract�res composant le nom des sous-r�pertoires. Dans
af84459fbf938e508fd10b01cb8d699c79083813takashi l'exemple donn� plus haut, l'empreinte se trouvera � :
af84459fbf938e508fd10b01cb8d699c79083813takashi <code>/var/cache/apache/x/y/TGxSMO2b68mBCykqkp1w</code>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Cette technique a pour but principal de r�duire le nombre de
af84459fbf938e508fd10b01cb8d699c79083813takashi sous-r�pertoires ou de fichiers contenus dans un r�pertoire particulier,
af84459fbf938e508fd10b01cb8d699c79083813takashi car le fonctionnement de la plupart des syst�mes de fichiers est ralenti
af84459fbf938e508fd10b01cb8d699c79083813takashi quand ce nombre augmente. Avec la valeur "1" pour la directive
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="directive"><a href="/mod/mod_cache_disk.html#cachedirlength">CacheDirLength</a></code>,
af84459fbf938e508fd10b01cb8d699c79083813takashi il peut y avoir au plus 64 sous-r�pertoires � un niveau quelconque.
af84459fbf938e508fd10b01cb8d699c79083813takashi Avec la valeur "2", il peut y en avoir 64 * 64, etc...
af84459fbf938e508fd10b01cb8d699c79083813takashi A moins d'avoir une bonne raison pour ne pas le faire, l'utilisation de
af84459fbf938e508fd10b01cb8d699c79083813takashi la valeur "1" pour la directive
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="directive"><a href="/mod/mod_cache_disk.html#cachedirlength">CacheDirLength</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi est recommand�e.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Le param�trage de la directive
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <code class="directive"><a href="/mod/mod_cache_disk.html#cachedirlevels">CacheDirLevels</a></code>
af84459fbf938e508fd10b01cb8d699c79083813takashi d�pend du nombre de fichiers que vous pensez stocker dans le cache.
af84459fbf938e508fd10b01cb8d699c79083813takashi Avec une valeur de "2" comme dans l'exemple donn� plus haut,
af84459fbf938e508fd10b01cb8d699c79083813takashi 4096 sous-r�pertoires peuvent �tre cr��s au total. Avec 1 million de
af84459fbf938e508fd10b01cb8d699c79083813takashi fichiers dans le cache, cela �quivaut � environ 245 URLs mises en cache
af84459fbf938e508fd10b01cb8d699c79083813takashi dans chaque r�pertoire.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Chaque URL n�cessite au moins deux fichiers dans le cache. Ce sont en
af84459fbf938e508fd10b01cb8d699c79083813takashi g�n�ral un fichier ".header", qui contient des meta-informations � propos
af84459fbf938e508fd10b01cb8d699c79083813takashi de l'URL, comme la date de son arriv�e � expiration,
af84459fbf938e508fd10b01cb8d699c79083813takashi et un fichier ".data" qui est la copie exacte du contenu � servir.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Dans le cas d'un contenu n�goci� via l'en-t�te "Vary", un r�pertoire
af84459fbf938e508fd10b01cb8d699c79083813takashi ".vary" sera cr�� pour l'URL en question. Ce r�pertoire contiendra de
af84459fbf938e508fd10b01cb8d699c79083813takashi multiples fichiers ".data" correspondant aux diff�rents contenus
af84459fbf938e508fd10b01cb8d699c79083813takashi n�goci�s.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <h3>Maintenance du cache sur disque</h3>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <p>Bien que le module <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code> supprime un contenu
af84459fbf938e508fd10b01cb8d699c79083813takashi du cache lorsqu'il est arriv� � expiration, il ne maintient aucune
af84459fbf938e508fd10b01cb8d699c79083813takashi information � propos de la taille totale du cache ou de l'espace restant
af84459fbf938e508fd10b01cb8d699c79083813takashi disponible.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p>Par contre l'utilitaire
3c13a815670b54d1c17bf02954f7d2b066cde95cnd <a href="programs/htcacheclean.html">htcacheclean</a> fourni avec
3c13a815670b54d1c17bf02954f7d2b066cde95cnd httpd
af84459fbf938e508fd10b01cb8d699c79083813takashi vous permet, comme son nom l'indique, de nettoyer le cache p�riodiquement.
af84459fbf938e508fd10b01cb8d699c79083813takashi D�terminer la fr�quence � laquelle lancer <a href="programs/htcacheclean.html">htcacheclean</a> et la taille souhait�e
af84459fbf938e508fd10b01cb8d699c79083813takashi pour le cache est une t�che relativement complexe et il vous faudra de
af84459fbf938e508fd10b01cb8d699c79083813takashi nombreux essais et erreurs pour arriver � s�lectionner des valeurs
af84459fbf938e508fd10b01cb8d699c79083813takashi optimales.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p><a href="programs/htcacheclean.html">htcacheclean</a> op�re selon deux
af84459fbf938e508fd10b01cb8d699c79083813takashi modes. Il peut s'ex�cuter comme d�mon r�sident, ou �tre lanc�
af84459fbf938e508fd10b01cb8d699c79083813takashi p�riodiquement par cron. <a href="programs/htcacheclean.html">htcacheclean</a> peut mettre une heure
af84459fbf938e508fd10b01cb8d699c79083813takashi ou plus pour traiter de tr�s grands caches (plusieurs dizaines de
af84459fbf938e508fd10b01cb8d699c79083813takashi Gigaoctets) et si vous l'ex�cutez � partir de cron, il vous est
af84459fbf938e508fd10b01cb8d699c79083813takashi conseill� de d�terminer la dur�e typique d'un traitement, afin d'�viter
af84459fbf938e508fd10b01cb8d699c79083813takashi d'ex�cuter plusieurs instances � la fois.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi <p class="figure">
af84459fbf938e508fd10b01cb8d699c79083813takashi <img src="images/caching_fig1.gif" alt="" width="600" height="406" /><br />
af84459fbf938e508fd10b01cb8d699c79083813takashi <a id="figure1" name="figure1"><dfn>Figure 1</dfn></a>: Croissance
af84459fbf938e508fd10b01cb8d699c79083813takashi typique du cache / s�quence de nettoyage.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <p>Comme <code class="module"><a href="/mod/mod_cache_disk.html">mod_cache_disk</a></code> ne tient pas compte de l'espace
af84459fbf938e508fd10b01cb8d699c79083813takashi utilis� dans le cache, vous devez vous assurer que
af84459fbf938e508fd10b01cb8d699c79083813takashi <a href="programs/htcacheclean.html">htcacheclean</a> est configur� de
af84459fbf938e508fd10b01cb8d699c79083813takashi fa�on � laisser suffisamment d'"espace de croissance"
af84459fbf938e508fd10b01cb8d699c79083813takashi � la suite d'un nettoyage.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi
af84459fbf938e508fd10b01cb8d699c79083813takashi </div></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi<div class="bottomlang">
af84459fbf938e508fd10b01cb8d699c79083813takashi<p><span>Langues Disponibles: </span><a href="/en/caching.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
af84459fbf938e508fd10b01cb8d699c79083813takashi<a href="/fr/caching.html" title="Fran�ais">&nbsp;fr&nbsp;</a> |
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung<a href="/tr/caching.html" hreflang="tr" rel="alternate" title="T�rk�e">&nbsp;tr&nbsp;</a></p>
af84459fbf938e508fd10b01cb8d699c79083813takashi</div><div id="footer">
9c1260efa52c82c2a58e5b5f20cd6902563d95f5rbowen<p class="apache">Copyright 2011 The Apache Software Foundation.<br />Autoris� sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
af84459fbf938e508fd10b01cb8d699c79083813takashi<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">Glossaire</a> | <a href="/sitemap.html">Plan du site</a></p></div>
af84459fbf938e508fd10b01cb8d699c79083813takashi</body></html>