]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_expires.xml.fr
Update docco xforms
[apache] / docs / manual / mod / mod_expires.xml.fr
1 <?xml version="1.0"?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
4 <!-- English Revision : 1098874 -->
5 <!-- French translation : Lucien GENTIS -->
6 <!-- Reviewed by : Vincent Deffontaines -->
7
8 <!--
9  Licensed to the Apache Software Foundation (ASF) under one or more
10  contributor license agreements.  See the NOTICE file distributed with
11  this work for additional information regarding copyright ownership.
12  The ASF licenses this file to You under the Apache License, Version 2.0
13  (the "License"); you may not use this file except in compliance with
14  the License.  You may obtain a copy of the License at
15
16      http://www.apache.org/licenses/LICENSE-2.0
17
18  Unless required by applicable law or agreed to in writing, software
19  distributed under the License is distributed on an "AS IS" BASIS,
20  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  See the License for the specific language governing permissions and
22  limitations under the License.
23 -->
24
25 <modulesynopsis metafile="mod_expires.xml.meta">
26
27 <name>mod_expires</name>
28 <description>G&eacute;n&eacute;ration des en-t&ecirc;tes HTTP <code>Expires</code> et
29 <code>Cache-Control</code> en fonction de crit&egrave;res sp&eacute;cifi&eacute;s par
30 l'utilisateur</description>
31 <status>Extension</status>
32 <sourcefile>mod_expires.c</sourcefile>
33 <identifier>expires_module</identifier>
34
35 <summary>
36     <p>Ce module permet de contr&ocirc;ler la d&eacute;finition de l'en-t&ecirc;te HTTP
37     <code>Expires</code> et la directive <code>max-age</code> de
38     l'en-t&ecirc;te HTTP <code>Cache-Control</code> dans les r&eacute;ponses du
39     serveur. La date d'expiration peut &ecirc;tre d&eacute;finie soit par rapport &agrave;
40     la date de derni&egrave;re modification du fichier source, soit
41     par rapport &agrave; l'heure d'acc&egrave;s du client.</p>
42
43     <p>Ces en-t&ecirc;tes HTTP permettent d'informer le client quant &agrave; la
44     validit&eacute; et &agrave; la persistence du document. S'il est pr&eacute;sent dans le
45     cache, et tant qu'il n'est pas arriv&eacute; &agrave; expiration, le document sera
46     servi &agrave; partir de ce dernier, plut&ocirc;t qu'&agrave; partir du document source.
47     Apr&egrave;s expiration, la copie du document dans le cache sera consid&eacute;r&eacute;e
48     comme "expir&eacute;e" et donc invalide, et une nouvelle copie devra &ecirc;tre
49     obtenue &agrave; partir du document source.</p>
50
51     <p>Pour modifier les directives de contr&ocirc;le du cache autres
52     que <code>max-age</code> (voir la <a
53     href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9">RFC
54     2616 section 14.9</a>), vous pouvez utiliser la directive <directive
55     module="mod_headers">Header</directive>.</p>
56
57     <p>Lorsque l'en-t&ecirc;te <code>Expires</code> est d&eacute;j&agrave; pr&eacute;sent dans la
58     r&eacute;ponse g&eacute;n&eacute;r&eacute;e par le serveur, par exemple s'il a &eacute;t&eacute; cr&eacute;&eacute; par un
59     script CGI ou un serveur original via un serveur mandataire, ce
60     module n'ajoute aucun en-t&ecirc;te <code>Expires</code> ou
61     <code>Cache-Control</code>.</p>
62 </summary>
63
64 <section id="AltSyn"><title>Autre syntaxe de d&eacute;finition de
65 l'intervalle</title>
66     <p>Pour une syntaxe plus lisible, on peut aussi utiliser les
67     directives <directive
68     module="mod_expires">ExpiresDefault</directive> et <directive
69     module="mod_expires">ExpiresByType</directive> comme suit :</p>
70
71     <example>
72       ExpiresDefault "&lt;base&gt; [plus] {&lt;num&gt;
73       &lt;type&gt;}*"<br />
74       ExpiresByType type/encoding "&lt;base&gt; [plus]
75       {&lt;num&gt; &lt;type&gt;}*"
76     </example>
77
78     <p>o&ugrave; &lt;base&gt; peut &ecirc;tre :</p>
79
80     <ul>
81       <li><code>access</code></li>
82
83       <li><code>now</code> (&eacute;quivalent &agrave;
84       '<code>access</code>')</li>
85
86       <li><code>modification</code></li>
87     </ul>
88
89     <p>Le mot-cl&eacute; <code>plus</code> est optionnel. &lt;num&gt; doit
90     correspondre &agrave; une valeur enti&egrave;re [compatible avec
91     <code>atoi()</code>], et &lt;type&gt; peut &ecirc;tre choisi parmi :</p>
92
93     <ul>
94       <li><code>years</code></li>
95       <li><code>months</code></li>
96       <li><code>weeks</code></li>
97       <li><code>days</code></li>
98       <li><code>hours</code></li>
99       <li><code>minutes</code></li>
100       <li><code>seconds</code></li>
101     </ul>
102
103     <p>Par exemple, pour faire expirer par d&eacute;faut les documents 1 mois
104     apr&egrave;s leur acc&egrave;s, on peut utiliser une des directives suivantes :</p>
105     <example>
106       ExpiresDefault "access plus 1 month"<br />
107       ExpiresDefault "access plus 4 weeks"<br />
108       ExpiresDefault "access plus 30 days"
109     </example>
110
111
112     <p>La date d'expiration peut &ecirc;tre d&eacute;finie plus pr&eacute;cis&eacute;ment en
113     ajoutant plusieurs clauses'&lt;num&gt; &lt;type&gt;' :</p>
114
115     <example>
116       ExpiresByType text/html "access plus 1 month 15
117       days 2 hours"<br />
118       ExpiresByType image/gif "modification plus 5 hours 3
119       minutes"
120     </example>
121
122     <p>Notez que si vous utilisez une configuration bas&eacute;e sur la date de
123     modification, l'en-t&ecirc;te Expires ne sera pas ajout&eacute; &agrave; un contenu qui
124     ne provient pas directement d'un fichier sur disque ; et ceci tout
125     simplement parce que ce type de contenu ne poss&egrave;de pas de date de
126     modification.</p>
127 </section>
128
129 <directivesynopsis>
130 <name>ExpiresActive</name>
131 <description>Active la g&eacute;n&eacute;ration d'en-t&ecirc;tes
132 <code>Expires</code></description>
133 <syntax>ExpiresActive On|Off</syntax>
134 <default>ExpiresActive Off</default>
135 <contextlist><context>server config</context>
136 <context>virtual host</context><context>directory</context>
137 <context>.htaccess</context></contextlist>
138 <override>Indexes</override>
139
140 <usage>
141     <p>Cette directive permet d'activer ou de d&eacute;sactiver la g&eacute;n&eacute;ration
142     des en-t&ecirc;tes <code>Expires</code> et <code>Cache-Control</code> pour
143     les documents concern&eacute;s ; en d'autres termes, si cette directive se
144     trouve dans un fichier <code>.htaccess</code>, par exemple, elle ne
145     s'applique qu'aux documents g&eacute;n&eacute;r&eacute;s &agrave; partir du r&eacute;pertoire
146     consid&eacute;r&eacute;. Si elle est d&eacute;finie &agrave; <code>Off</code>, les en-t&ecirc;tes ne
147     seront g&eacute;n&eacute;r&eacute;s pour aucun document du domaine consid&eacute;r&eacute; (sauf
148     surcharge de la configuration &agrave; un niveau inf&eacute;rieur, comme un
149     fichier <code>.htaccess</code> qui l'emporterait sur le fichier de
150     configuration du serveur). Si elle est d&eacute;finie &agrave; <code>On</code>,
151     les en-t&ecirc;tes seront ajout&eacute;s aux documents servis en fonction des
152     crit&egrave;res d&eacute;finis par les directives <directive
153     module="mod_expires">ExpiresByType</directive> et <directive
154     module="mod_expires">ExpiresDefault</directive> (<em>voir plus
155     loin</em>).</p>
156
157     <p>Notez que cette directive ne permet pas de garantir qu'un en-t&ecirc;te
158     <code>Expires</code> ou <code>Cache-Control</code> sera g&eacute;n&eacute;r&eacute;. Si
159     les crit&egrave;res ne sont pas respect&eacute;s, aucun en-t&ecirc;te ne sera g&eacute;n&eacute;r&eacute;, et
160     la directive produira le m&ecirc;me effet que si elle n'avait pas &eacute;t&eacute;
161     d&eacute;finie.</p>
162  </usage>
163 </directivesynopsis>
164
165 <directivesynopsis>
166 <name>ExpiresByType</name>
167 <description>D&eacute;finition de la valeur de l'en-t&ecirc;te <code>Expires</code>
168 en fonction du type MIME</description>
169 <syntax>ExpiresByType <var>type MIME</var>
170 <var>&lt;code&gt;secondes</var></syntax>
171 <contextlist><context>server config</context><context>virtual host</context>
172 <context>directory</context><context>.htaccess</context></contextlist>
173 <override>Indexes</override>
174
175 <usage>
176     <p>Cette directive permet de d&eacute;finir la valeur de l'en-t&ecirc;te
177     <code>Expires</code> et de la directive <code>max-age</code> de
178     l'en-t&ecirc;te <code>Cache-Control</code> g&eacute;n&eacute;r&eacute;s pour les documents du
179     type MIME sp&eacute;cifi&eacute; (par exemple, <code>text/html</code>). Le second
180     argument d&eacute;finit le nombre de secondes qui seront ajout&eacute;es &agrave; un
181     temps de base pour calculer la date d'expiration.
182     <code>Cache-Control: max-age</code> se calcule en soustrayant la
183     date de la requ&ecirc;te de la date d'expiration et s'exprime en
184     secondes.</p>
185
186     <p>Le champ <code><var>&lt;code&gt;</var></code> permet de sp&eacute;cifier
187     quel temps doit &ecirc;tre utilis&eacute; comme temps de base; <code>M</code>
188     signifie que c'est la date
189     de derni&egrave;re modification du fichier qui doit &ecirc;tre utilis&eacute;e comme
190     temps de base, alors que <code>A</code> signifie que c'est le moment
191     o&ugrave; le client a acc&eacute;d&eacute; au document qui doit &ecirc;tre utilis&eacute; comme temps
192     de base.</p>
193
194     <p>La diff&eacute;rence d'effet est subtile. Si on utilise <code>M</code>,
195     toutes les copies existantes du document dans tous les caches
196     expireront au m&ecirc;me moment, ce qui peut convenir par exemple pour une
197     notice hebdomadaire qui correspond toujours &agrave; la m&ecirc;me URL. Si on
198     utilise <code>A</code>, la date d'expiration sera diff&eacute;rente pour
199     chaque client, ce qui peut convenir pour des fichiers d'images qui
200     ne changent pas tr&egrave;s souvent, et en particulier pour un ensemble de
201     documents en relation qui se r&eacute;f&egrave;rent tous aux m&ecirc;mes images (ces
202     images sont alors acc&eacute;d&eacute;es de mani&egrave;re r&eacute;p&eacute;titive dans un intervalle
203     de temps assez court).</p>
204
205     <example><title>Exemple :</title>
206       # active la g&eacute;n&eacute;ration des en-t&ecirc;tes Expires<br />
207       ExpiresActive On<br />
208       # les images GIF expirent au bout d'un mois dans le cache du
209       # client<br />
210       ExpiresByType image/gif A2592000<br />
211       # les documents HTML restent valables une semaine apr&egrave;s leur date
212       # de derni&egrave;re modification<br />
213       ExpiresByType text/html M604800
214     </example>
215
216     <p>Notez que cette directive ne produit d'effet que si
217     <code>ExpiresActive On</code> a &eacute;t&eacute; sp&eacute;cifi&eacute;. Elle l'emporte, mais
218     <em>seulement</em> pour le type MIME sp&eacute;cifi&eacute;, sur toute date
219     d'expiration d&eacute;finie par la directive <directive
220     module="mod_expires">ExpiresDefault</directive>.</p>
221
222     <p>Vous pouvez aussi d&eacute;finir le mode de calcul de la date
223     d'expiration en utilisant une <a href="#AltSyn">syntaxe
224     alternative</a>, comme d&eacute;crit plus haut dans ce document.</p>
225 </usage>
226 </directivesynopsis>
227
228 <directivesynopsis>
229 <name>ExpiresDefault</name>
230 <description>Mode de calcul par d&eacute;faut de la date
231 d'expiration</description>
232 <syntax>ExpiresDefault <var>&lt;code&gt;secondes</var></syntax>
233 <contextlist><context>server config</context><context>virtual host</context>
234 <context>directory</context><context>.htaccess</context></contextlist>
235 <override>Indexes</override>
236
237 <usage>
238     <p>Cette directive permet de d&eacute;finir le mode de calcul par d&eacute;faut de
239     la date d'expiration pour tous les documents du domaine consid&eacute;r&eacute;.
240     Elle peut &ecirc;tre annul&eacute;e pour certains types de documents par la
241     directive <directive
242     module="mod_expires">ExpiresByType</directive>. Voir la description
243     de cette derni&egrave;re directive pour plus de d&eacute;tails &agrave; propos de la
244     syntaxe de l'argument, ainsi que la description de la <a
245     href="#AltSyn">syntaxe alternative</a>.</p>
246 </usage>
247 </directivesynopsis>
248 </modulesynopsis>
249