1<?xml version="1.0" encoding="ISO-8859-1"?> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 3<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!-- 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 5 This file is generated from xml source: DO NOT EDIT 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 7 --> 8<title>mod_expires - Serveur Apache HTTP</title> 9<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> 10<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> 11<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" /> 12<script src="/style/scripts/prettify.min.js" type="text/javascript"> 13</script> 14 15<link href="/images/favicon.ico" rel="shortcut icon" /></head> 16<body> 17<div id="page-header"> 18<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">Glossaire</a> | <a href="/sitemap.html">Plan du site</a></p> 19<p class="apache">Serveur Apache HTTP Version 2.4</p> 20<img alt="" src="/images/feather.gif" /></div> 21<div class="up"><a href="./"><img title="<-" alt="<-" src="/images/left.gif" /></a></div> 22<div id="path"> 23<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div> 24<div id="page-content"> 25<div id="preamble"><h1>Module Apache mod_expires</h1> 26<div class="toplang"> 27<p><span>Langues Disponibles: </span><a href="/en/mod/mod_expires.html" hreflang="en" rel="alternate" title="English"> en </a> | 28<a href="/fr/mod/mod_expires.html" title="Fran�ais"> fr </a> | 29<a href="/ja/mod/mod_expires.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 30<a href="/ko/mod/mod_expires.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> 31</div> 32<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>G�n�ration des en-t�tes HTTP <code>Expires</code> et 33<code>Cache-Control</code> en fonction de crit�res sp�cifi�s par 34l'utilisateur</td></tr> 35<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr> 36<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur�de�Module:</a></th><td>expires_module</td></tr> 37<tr><th><a href="module-dict.html#SourceFile">Fichier�Source:</a></th><td>mod_expires.c</td></tr></table> 38<h3>Sommaire</h3> 39 40 <p>Ce module permet de contr�ler la d�finition de l'en-t�te HTTP 41 <code>Expires</code> et la directive <code>max-age</code> de 42 l'en-t�te HTTP <code>Cache-Control</code> dans les r�ponses du 43 serveur. La date d'expiration peut �tre d�finie soit par rapport � 44 la date de derni�re modification du fichier source, soit 45 par rapport � l'heure d'acc�s du client.</p> 46 47 <p>Ces en-t�tes HTTP permettent d'informer le client quant � la 48 validit� et � la persistence du document. S'il est pr�sent dans le 49 cache, et tant qu'il n'est pas arriv� � expiration, le document sera 50 servi � partir de ce dernier, plut�t qu'� partir du document source. 51 Apr�s expiration, la copie du document dans le cache sera consid�r�e 52 comme "expir�e" et donc invalide, et une nouvelle copie devra �tre 53 obtenue � partir du document source.</p> 54 55 <p>Pour modifier les directives de contr�le du cache autres 56 que <code>max-age</code> (voir la <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9">RFC 57 2616 section 14.9</a>), vous pouvez utiliser la directive <code class="directive"><a href="/mod/mod_headers.html#header">Header</a></code>.</p> 58 59 <p>Lorsque l'en-t�te <code>Expires</code> est d�j� pr�sent dans la 60 r�ponse g�n�r�e par le serveur, par exemple s'il a �t� cr�� par un 61 script CGI ou un serveur original via un serveur mandataire, ce 62 module n'ajoute aucun en-t�te <code>Expires</code> ou 63 <code>Cache-Control</code>.</p> 64</div> 65<div id="quickview"><h3 class="directives">Directives</h3> 66<ul id="toc"> 67<li><img alt="" src="/images/down.gif" /> <a href="#expiresactive">ExpiresActive</a></li> 68<li><img alt="" src="/images/down.gif" /> <a href="#expiresbytype">ExpiresByType</a></li> 69<li><img alt="" src="/images/down.gif" /> <a href="#expiresdefault">ExpiresDefault</a></li> 70</ul> 71<h3>Sujets</h3> 72<ul id="topics"> 73<li><img alt="" src="/images/down.gif" /> <a href="#AltSyn">Autre syntaxe de d�finition de 74l'intervalle</a></li> 75</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div> 76<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 77<div class="section"> 78<h2><a name="AltSyn" id="AltSyn">Autre syntaxe de d�finition de 79l'intervalle</a></h2> 80 <p>Pour une syntaxe plus lisible, on peut aussi utiliser les 81 directives <code class="directive"><a href="#expiresdefault">ExpiresDefault</a></code> et <code class="directive"><a href="#expiresbytype">ExpiresByType</a></code> comme suit :</p> 82 83 <pre class="prettyprint lang-config">ExpiresDefault "<var>base</var> [plus <var>num</var> <var>type</var>] [<var>num</var> <var>type</var>] ..." 84ExpiresByType type/encoding "<var>base</var> [plus <var>num</var> <var>type</var>] [<var>num</var> <var>type</var>] ..."</pre> 85 86 87 <p>o� <var>base</var> peut �tre :</p> 88 89 <ul> 90 <li><code>access</code></li> 91 92 <li><code>now</code> (�quivalent � 93 '<code>access</code>')</li> 94 95 <li><code>modification</code></li> 96 </ul> 97 98 <p>Le mot-cl� <code>plus</code> est optionnel. <var>num</var> doit 99 correspondre � une valeur enti�re [compatible avec 100 <code>atoi()</code>], et <var>type</var> peut �tre choisi parmi :</p> 101 102 <ul> 103 <li><code>years</code></li> 104 <li><code>months</code></li> 105 <li><code>weeks</code></li> 106 <li><code>days</code></li> 107 <li><code>hours</code></li> 108 <li><code>minutes</code></li> 109 <li><code>seconds</code></li> 110 </ul> 111 112 <p>Par exemple, pour faire expirer par d�faut les documents 1 mois 113 apr�s leur acc�s, on peut utiliser une des directives suivantes :</p> 114 <pre class="prettyprint lang-config">ExpiresDefault "access plus 1 month" 115ExpiresDefault "access plus 4 weeks" 116ExpiresDefault "access plus 30 days"</pre> 117 118 119 120 <p>La date d'expiration peut �tre d�finie plus pr�cis�ment en 121 ajoutant plusieurs clauses '<var>num</var> <var>type</var>' :</p> 122 123 <pre class="prettyprint lang-config">ExpiresByType text/html "access plus 1 month 15 days 2 hours" 124ExpiresByType image/gif "modification plus 5 hours 3 minutes"</pre> 125 126 127 <p>Notez que si vous utilisez une configuration bas�e sur la date de 128 modification, l'en-t�te Expires ne sera pas ajout� � un contenu qui 129 ne provient pas directement d'un fichier sur disque ; et ceci tout 130 simplement parce que ce type de contenu ne poss�de pas de date de 131 modification.</p> 132</div> 133<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 134<div class="directive-section"><h2><a name="ExpiresActive" id="ExpiresActive">ExpiresActive</a> <a name="expiresactive" id="expiresactive">Directive</a></h2> 135<table class="directive"> 136<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la g�n�ration d'en-t�tes 137<code>Expires</code></td></tr> 138<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ExpiresActive On|Off</code></td></tr> 139<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>ExpiresActive Off</code></td></tr> 140<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire, .htaccess</td></tr> 141<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Indexes</td></tr> 142<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr> 143<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_expires</td></tr> 144</table> 145 <p>Cette directive permet d'activer ou de d�sactiver la g�n�ration 146 des en-t�tes <code>Expires</code> et <code>Cache-Control</code> pour 147 les documents concern�s ; en d'autres termes, si cette directive se 148 trouve dans un fichier <code>.htaccess</code>, par exemple, elle ne 149 s'applique qu'aux documents g�n�r�s � partir du r�pertoire 150 consid�r�. Si elle est d�finie � <code>Off</code>, les en-t�tes ne 151 seront g�n�r�s pour aucun document du domaine consid�r� (sauf 152 surcharge de la configuration � un niveau inf�rieur, comme un 153 fichier <code>.htaccess</code> qui l'emporterait sur le fichier de 154 configuration du serveur). Si elle est d�finie � <code>On</code>, 155 les en-t�tes seront ajout�s aux documents servis en fonction des 156 crit�res d�finis par les directives <code class="directive"><a href="#expiresbytype">ExpiresByType</a></code> et <code class="directive"><a href="#expiresdefault">ExpiresDefault</a></code> (<em>voir plus 157 loin</em>).</p> 158 159 <p>Notez que cette directive ne permet pas de garantir qu'un en-t�te 160 <code>Expires</code> ou <code>Cache-Control</code> sera g�n�r�. Si 161 les crit�res ne sont pas respect�s, aucun en-t�te ne sera g�n�r�, et 162 la directive produira le m�me effet que si elle n'avait pas �t� 163 d�finie.</p> 164 165</div> 166<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 167<div class="directive-section"><h2><a name="ExpiresByType" id="ExpiresByType">ExpiresByType</a> <a name="expiresbytype" id="expiresbytype">Directive</a></h2> 168<table class="directive"> 169<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�finition de la valeur de l'en-t�te <code>Expires</code> 170en fonction du type MIME</td></tr> 171<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ExpiresByType <var>type MIME</var> 172<var><code>secondes</var></code></td></tr> 173<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire, .htaccess</td></tr> 174<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Indexes</td></tr> 175<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr> 176<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_expires</td></tr> 177</table> 178 <p>Cette directive permet de d�finir la valeur de l'en-t�te 179 <code>Expires</code> et de la directive <code>max-age</code> de 180 l'en-t�te <code>Cache-Control</code> g�n�r�s pour les documents du 181 type MIME sp�cifi� (par exemple, <code>text/html</code>). Le second 182 argument d�finit le nombre de secondes qui seront ajout�es � un 183 temps de base pour calculer la date d'expiration. 184 <code>Cache-Control: max-age</code> se calcule en soustrayant la 185 date de la requ�te de la date d'expiration et s'exprime en 186 secondes.</p> 187 188 <p>Le champ <code><var><code></var></code> permet de sp�cifier 189 quel temps doit �tre utilis� comme temps de base; <code>M</code> 190 signifie que c'est la date 191 de derni�re modification du fichier qui doit �tre utilis�e comme 192 temps de base, alors que <code>A</code> signifie que c'est le moment 193 o� le client a acc�d� au document qui doit �tre utilis� comme temps 194 de base.</p> 195 196 <p>La diff�rence d'effet est subtile. Si on utilise <code>M</code>, 197 toutes les copies existantes du document dans tous les caches 198 expireront au m�me moment, ce qui peut convenir par exemple pour une 199 notice hebdomadaire qui correspond toujours � la m�me URL. Si on 200 utilise <code>A</code>, la date d'expiration sera diff�rente pour 201 chaque client, ce qui peut convenir pour des fichiers d'images qui 202 ne changent pas tr�s souvent, et en particulier pour un ensemble de 203 documents en relation qui se r�f�rent tous aux m�mes images (ces 204 images sont alors acc�d�es de mani�re r�p�titive dans un intervalle 205 de temps assez court).</p> 206 207 <div class="example"><h3>Exemple :</h3><pre class="prettyprint lang-config"># active la g�n�ration des en-t�tes Expires 208ExpiresActive On 209# les images GIF expirent au bout d'un mois dans le cache du 210# client 211ExpiresByType image/gif A2592000 212# les documents HTML restent valables une semaine apr�s leur date 213# de derni�re modification 214ExpiresByType text/html M604800</pre> 215</div> 216 217 <p>Notez que cette directive ne produit d'effet que si 218 <code>ExpiresActive On</code> a �t� sp�cifi�. Elle l'emporte, mais 219 <em>seulement</em> pour le type MIME sp�cifi�, sur toute date 220 d'expiration d�finie par la directive <code class="directive"><a href="#expiresdefault">ExpiresDefault</a></code>.</p> 221 222 <p>Vous pouvez aussi d�finir le mode de calcul de la date 223 d'expiration en utilisant une <a href="#AltSyn">syntaxe 224 alternative</a>, comme d�crit plus haut dans ce document.</p> 225 226</div> 227<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 228<div class="directive-section"><h2><a name="ExpiresDefault" id="ExpiresDefault">ExpiresDefault</a> <a name="expiresdefault" id="expiresdefault">Directive</a></h2> 229<table class="directive"> 230<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Mode de calcul par d�faut de la date 231d'expiration</td></tr> 232<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ExpiresDefault <var><code>secondes</var></code></td></tr> 233<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r�pertoire, .htaccess</td></tr> 234<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Indexes</td></tr> 235<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr> 236<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_expires</td></tr> 237</table> 238 <p>Cette directive permet de d�finir le mode de calcul par d�faut de 239 la date d'expiration pour tous les documents du domaine consid�r�. 240 Elle peut �tre annul�e pour certains types de documents par la 241 directive <code class="directive"><a href="#expiresbytype">ExpiresByType</a></code>. Voir la description 242 de cette derni�re directive pour plus de d�tails � propos de la 243 syntaxe de l'argument, ainsi que la description de la <a href="#AltSyn">syntaxe alternative</a>.</p> 244 245</div> 246</div> 247<div class="bottomlang"> 248<p><span>Langues Disponibles: </span><a href="/en/mod/mod_expires.html" hreflang="en" rel="alternate" title="English"> en </a> | 249<a href="/fr/mod/mod_expires.html" title="Fran�ais"> fr </a> | 250<a href="/ja/mod/mod_expires.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 251<a href="/ko/mod/mod_expires.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p> 252</div><div class="top"><a href="#page-header"><img src="/images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />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 again 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 Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div> 253<script type="text/javascript"><!--//--><![CDATA[//><!-- 254var comments_shortname = 'httpd'; 255var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_expires.html'; 256(function(w, d) { 257 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 258 d.write('<div id="comments_thread"><\/div>'); 259 var s = d.createElement('script'); 260 s.type = 'text/javascript'; 261 s.async = true; 262 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 263 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 264 } 265 else { 266 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 267 } 268})(window, document); 269//--><!]]></script></div><div id="footer"> 270<p class="apache">Copyright 2014 The Apache Software Foundation.<br />Autoris� sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> 271<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">Glossaire</a> | <a href="/sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- 272if (typeof(prettyPrint) !== 'undefined') { 273 prettyPrint(); 274} 275//--><!]]></script> 276</body></html>