]> granicus.if.org Git - apache/blob - docs/manual/mod/core.html.fr
Fixes a handful of xml validation errors.
[apache] / docs / manual / mod / core.html.fr
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>core - 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" />
12 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
13 <body>
14 <div id="page-header">
15 <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>
16 <p class="apache">Serveur Apache HTTP Version 2.3</p>
17 <img alt="" src="../images/feather.gif" /></div>
18 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
19 <div id="path">
20 <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.3</a> &gt; <a href="./">Modules</a></div>
21 <div id="page-content">
22 <div id="preamble"><h1>Fonctionalités de Base Apache</h1>
23 <div class="toplang">
24 <p><span>Langues Disponibles: </span><a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
25 <a href="../en/mod/core.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
26 <a href="../fr/mod/core.html" title="Français">&nbsp;fr&nbsp;</a> |
27 <a href="../ja/mod/core.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
28 <a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
29 </div>
30 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Fonctionnalités de base du serveur HTTP Apache toujours
31 disponibles</td></tr>
32 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Core</td></tr></table>
33 </div>
34 <div id="quickview"><h3 class="directives">Directives</h3>
35 <ul id="toc">
36 <li><img alt="" src="../images/down.gif" /> <a href="#acceptfilter">AcceptFilter</a></li>
37 <li><img alt="" src="../images/down.gif" /> <a href="#acceptpathinfo">AcceptPathInfo</a></li>
38 <li><img alt="" src="../images/down.gif" /> <a href="#accessfilename">AccessFileName</a></li>
39 <li><img alt="" src="../images/down.gif" /> <a href="#adddefaultcharset">AddDefaultCharset</a></li>
40 <li><img alt="" src="../images/down.gif" /> <a href="#allowencodedslashes">AllowEncodedSlashes</a></li>
41 <li><img alt="" src="../images/down.gif" /> <a href="#allowoverride">AllowOverride</a></li>
42 <li><img alt="" src="../images/down.gif" /> <a href="#cgimapextension">CGIMapExtension</a></li>
43 <li><img alt="" src="../images/down.gif" /> <a href="#contentdigest">ContentDigest</a></li>
44 <li><img alt="" src="../images/down.gif" /> <a href="#defaulttype">DefaultType</a></li>
45 <li><img alt="" src="../images/down.gif" /> <a href="#define">Define</a></li>
46 <li><img alt="" src="../images/down.gif" /> <a href="#directory">&lt;Directory&gt;</a></li>
47 <li><img alt="" src="../images/down.gif" /> <a href="#directorymatch">&lt;DirectoryMatch&gt;</a></li>
48 <li><img alt="" src="../images/down.gif" /> <a href="#documentroot">DocumentRoot</a></li>
49 <li><img alt="" src="../images/down.gif" /> <a href="#enablemmap">EnableMMAP</a></li>
50 <li><img alt="" src="../images/down.gif" /> <a href="#enablesendfile">EnableSendfile</a></li>
51 <li><img alt="" src="../images/down.gif" /> <a href="#errordocument">ErrorDocument</a></li>
52 <li><img alt="" src="../images/down.gif" /> <a href="#errorlog">ErrorLog</a></li>
53 <li><img alt="" src="../images/down.gif" /> <a href="#errorlogformat">ErrorLogFormat</a></li>
54 <li><img alt="" src="../images/down.gif" /> <a href="#extendedstatus">ExtendedStatus</a></li>
55 <li><img alt="" src="../images/down.gif" /> <a href="#fileetag">FileETag</a></li>
56 <li><img alt="" src="../images/down.gif" /> <a href="#files">&lt;Files&gt;</a></li>
57 <li><img alt="" src="../images/down.gif" /> <a href="#filesmatch">&lt;FilesMatch&gt;</a></li>
58 <li><img alt="" src="../images/down.gif" /> <a href="#forcetype">ForceType</a></li>
59 <li><img alt="" src="../images/down.gif" /> <a href="#hostnamelookups">HostnameLookups</a></li>
60 <li><img alt="" src="../images/down.gif" /> <a href="#if">&lt;If&gt;</a></li>
61 <li><img alt="" src="../images/down.gif" /> <a href="#ifdefine">&lt;IfDefine&gt;</a></li>
62 <li><img alt="" src="../images/down.gif" /> <a href="#ifmodule">&lt;IfModule&gt;</a></li>
63 <li><img alt="" src="../images/down.gif" /> <a href="#include">Include</a></li>
64 <li><img alt="" src="../images/down.gif" /> <a href="#keepalive">KeepAlive</a></li>
65 <li><img alt="" src="../images/down.gif" /> <a href="#keepalivetimeout">KeepAliveTimeout</a></li>
66 <li><img alt="" src="../images/down.gif" /> <a href="#limit">&lt;Limit&gt;</a></li>
67 <li><img alt="" src="../images/down.gif" /> <a href="#limitexcept">&lt;LimitExcept&gt;</a></li>
68 <li><img alt="" src="../images/down.gif" /> <a href="#limitinternalrecursion">LimitInternalRecursion</a></li>
69 <li><img alt="" src="../images/down.gif" /> <a href="#limitrequestbody">LimitRequestBody</a></li>
70 <li><img alt="" src="../images/down.gif" /> <a href="#limitrequestfields">LimitRequestFields</a></li>
71 <li><img alt="" src="../images/down.gif" /> <a href="#limitrequestfieldsize">LimitRequestFieldSize</a></li>
72 <li><img alt="" src="../images/down.gif" /> <a href="#limitrequestline">LimitRequestLine</a></li>
73 <li><img alt="" src="../images/down.gif" /> <a href="#limitxmlrequestbody">LimitXMLRequestBody</a></li>
74 <li><img alt="" src="../images/down.gif" /> <a href="#location">&lt;Location&gt;</a></li>
75 <li><img alt="" src="../images/down.gif" /> <a href="#locationmatch">&lt;LocationMatch&gt;</a></li>
76 <li><img alt="" src="../images/down.gif" /> <a href="#loglevel">LogLevel</a></li>
77 <li><img alt="" src="../images/down.gif" /> <a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></li>
78 <li><img alt="" src="../images/down.gif" /> <a href="#mutex">Mutex</a></li>
79 <li><img alt="" src="../images/down.gif" /> <a href="#namevirtualhost">NameVirtualHost</a></li>
80 <li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
81 <li><img alt="" src="../images/down.gif" /> <a href="#rlimitcpu">RLimitCPU</a></li>
82 <li><img alt="" src="../images/down.gif" /> <a href="#rlimitmem">RLimitMEM</a></li>
83 <li><img alt="" src="../images/down.gif" /> <a href="#rlimitnproc">RLimitNPROC</a></li>
84 <li><img alt="" src="../images/down.gif" /> <a href="#scriptinterpretersource">ScriptInterpreterSource</a></li>
85 <li><img alt="" src="../images/down.gif" /> <a href="#seerequesttail">SeeRequestTail</a></li>
86 <li><img alt="" src="../images/down.gif" /> <a href="#serveradmin">ServerAdmin</a></li>
87 <li><img alt="" src="../images/down.gif" /> <a href="#serveralias">ServerAlias</a></li>
88 <li><img alt="" src="../images/down.gif" /> <a href="#servername">ServerName</a></li>
89 <li><img alt="" src="../images/down.gif" /> <a href="#serverpath">ServerPath</a></li>
90 <li><img alt="" src="../images/down.gif" /> <a href="#serverroot">ServerRoot</a></li>
91 <li><img alt="" src="../images/down.gif" /> <a href="#serversignature">ServerSignature</a></li>
92 <li><img alt="" src="../images/down.gif" /> <a href="#servertokens">ServerTokens</a></li>
93 <li><img alt="" src="../images/down.gif" /> <a href="#sethandler">SetHandler</a></li>
94 <li><img alt="" src="../images/down.gif" /> <a href="#setinputfilter">SetInputFilter</a></li>
95 <li><img alt="" src="../images/down.gif" /> <a href="#setoutputfilter">SetOutputFilter</a></li>
96 <li><img alt="" src="../images/down.gif" /> <a href="#timeout">TimeOut</a></li>
97 <li><img alt="" src="../images/down.gif" /> <a href="#traceenable">TraceEnable</a></li>
98 <li><img alt="" src="../images/down.gif" /> <a href="#undefine">UnDefine</a></li>
99 <li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalname">UseCanonicalName</a></li>
100 <li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></li>
101 <li><img alt="" src="../images/down.gif" /> <a href="#virtualhost">&lt;VirtualHost&gt;</a></li>
102 </ul>
103 </div>
104
105 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
106 <div class="directive-section"><h2><a name="AcceptFilter" id="AcceptFilter">AcceptFilter</a> <a name="acceptfilter" id="acceptfilter">Directive</a></h2>
107 <table class="directive">
108 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Permet d'optimiser la configuration d'une socket pour
109 l'écoute d'un protocole</td></tr>
110 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AcceptFilter <var>protocole</var> <var>filtre
111 d'acceptation</var></code></td></tr>
112 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
113 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
114 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
115 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.3 sous Windows et 2.1.5
116 sur les autres plates-formes.</td></tr>
117 </table>
118     <p>Cette directive permet d'effectuer une optimisation de la socket
119     d'écoute d'un type de protocole en fonction du système
120     d'exploitation. Le but premier est de faire en sorte que le noyau
121     n'envoie pas de socket au processus du serveur jusqu'à ce que
122     des données soient reçues, ou qu'une requête HTTP complète soit mise
123     en tampon. Seuls les <a href="http://www.freebsd.org/cgi/man.cgi?query=accept_filter&amp;     sektion=9">Filtres d'acceptation de FreeBSD</a>, le filtre plus
124     primitif <code>TCP_DEFER_ACCEPT</code> sous Linux, et la version
125     optimisée d'AcceptEx() de Windows sont actuellement supportés.</p>
126
127     <p>L'utilisation de l'argument <code>none</code> va désactiver tout
128     filtre d'acceptation pour ce protocole. Ceci s'avère utile pour les
129     protocoles qui nécessitent l'envoi de données par le serveur en
130     premier, comme <code>ftp:</code> ou <code>nntp</code>:</p>
131     <div class="example"><p><code>AcceptFilter nntp none</code></p></div>
132
133     <p>Sous FreeBSD, les valeurs par défaut sont :</p>
134     <div class="example"><p><code>
135         AcceptFilter http httpready <br />
136         AcceptFilter https dataready
137     </code></p></div>
138
139     <p>Le filtre d'acceptation <code>httpready</code> met en tampon des
140     requêtes HTTP entières au niveau du noyau. Quand une requête
141     entière a été reçue, le noyau l'envoie au serveur. Voir la page de
142     manuel de <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_http&amp;     sektion=9">accf_http(9)</a> pour plus de détails. Comme les requêtes
143     HTTPS sont chiffrées, celles-ci n'autorisent que le filtre <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_data&amp;     sektion=9">accf_data(9)</a>.</p>
144
145     <p>Sous Linux, les valeurs par défaut sont :</p>
146     <div class="example"><p><code>
147         AcceptFilter http data <br />
148         AcceptFilter https data
149     </code></p></div>
150
151     <p>Le filtre <code>TCP_DEFER_ACCEPT</code> de Linux ne supporte pas
152     la mise en tampon des requêtes http. Toute valeur autre que
153     <code>none</code> active le filtre <code>TCP_DEFER_ACCEPT</code>
154     pour ce protocole. Pour plus de détails, voir la page de
155     manuel Linux de <a href="http://homepages.cwi.nl/~aeb/linux/man2html/man7/     tcp.7.html">tcp(7)</a>.</p>
156
157     <p>Sous Windows, les valeurs par défaut sont :</p>
158     <div class="example"><p><code>
159         AcceptFilter http data <br />
160         AcceptFilter https data
161     </code></p></div>
162
163     <p>Le module MPM pour Windows mpm_winnt utilise la directive
164     AcceptFilter comme commutateur de l'API AcceptEx(), et ne supporte
165     pas la mise en tampon du protocole http. Deux valeurs utilisent
166     l'API Windows AcceptEx() et vont recycler les sockets réseau entre
167     les connexions. <code>data</code> attend jusqu'à ce que les données
168     aient été transmises comme décrit plus haut, et le tampon de données
169     initiales ainsi que les adresses réseau finales sont tous extraits
170     grâce à une seule invocation d'AcceptEx(). <code>connect</code>
171     utilise l'API AcceptEx(), extrait aussi les adresses réseau finales,
172     mais à l'instar de <code>none</code>, la valeur <code>connect</code>
173     n'attend pas la transmission des données initiales.</p>
174
175     <p>Sous Windows, <code>none</code> utilise accept() au lieu
176     d'AcceptEx(), et ne recycle pas les sockets entre les connexions.
177     Ceci s'avère utile pour les interfaces réseau dont le pilote est
178     défectueux, ainsi que pour certains fournisseurs de réseau comme les
179     pilotes vpn, ou les filtres anti-spam, anti-virus ou
180     anti-spyware.</p>
181
182
183 </div>
184 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
185 <div class="directive-section"><h2><a name="AcceptPathInfo" id="AcceptPathInfo">AcceptPathInfo</a> <a name="acceptpathinfo" id="acceptpathinfo">Directive</a></h2>
186 <table class="directive">
187 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Les ressources acceptent des informations sous forme d'un
188 nom de chemin en fin de requête.</td></tr>
189 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AcceptPathInfo On|Off|Default</code></td></tr>
190 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AcceptPathInfo Default</code></td></tr>
191 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
192 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
193 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
194 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
195 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible dans Apache httpd version 2.0.30 et
196 supérieures</td></tr>
197 </table>
198
199     <p>Cette directive permet de définir si les requêtes contenant des
200     informations sous forme d'un nom de chemin suivant le nom d'un
201     fichier réel (ou un fichier qui n'existe pas dans un répertoire qui
202     existe) doivent être acceptées ou rejetées. Les scripts peuvent
203     accéder à cette information via la variable d'environnement
204     <code>PATH_INFO</code>.</p>
205
206     <p>Supposons par exemple que <code>/test/</code> pointe vers un
207     répertoire qui ne contient que le fichier <code>here.html</code>.
208     Les requêtes pour <code>/test/here.html/more</code> et
209     <code>/test/nothere.html/more</code> vont affecter la valeur
210     <code>/more</code> à la variable d'environnement
211     <code>PATH_INFO</code>.</p>
212
213     <p>L'argument de la directive <code class="directive">AcceptPathInfo</code>
214     possède trois valeurs possibles :</p>
215     <dl>
216     <dt><code>Off</code></dt><dd>Une requête ne sera acceptée que si
217     elle correspond à un chemin qui existe. Par conséquent, une requête
218     contenant une information de chemin après le nom de fichier réel
219     comme <code>/test/here.html/more</code> dans l'exemple ci-dessus
220     renverra une erreur "404 NOT FOUND".</dd>
221
222     <dt><code>On</code></dt><dd>Une requête sera acceptée si la partie
223     principale du chemin correspond à un fichier existant. Dans
224     l'exemple ci-dessus <code>/test/here.html/more</code>, la requête
225     sera acceptée si <code>/test/here.html</code> correspond à un nom de
226     fichier valide.</dd>
227
228     <dt><code>Default</code></dt><dd>Le traitement des requêtes est
229     déterminé par le <a href="../handler.html">gestionnaire</a> responsable de la requête.
230     Le gestionnaire de base pour les fichiers normaux rejette par défaut
231     les requêtes avec <code>PATH_INFO</code>. Les gestionnaires qui
232     servent des scripts, comme<a href="mod_cgi.html">cgi-script</a> et <a href="mod_isapi.html">isapi-handler</a>, acceptent en général par
233     défaut les requêtes avec <code>PATH_INFO</code>.</dd>
234     </dl>
235
236     <p>Le but premier de la directive <code>AcceptPathInfo</code> est de
237     vous permettre de remplacer le choix du gestionnaire d'accepter ou
238     de rejeter <code>PATH_INFO</code>. Ce remplacement est nécessaire
239     par exemple, lorsque vous utilisez un <a href="../filter.html">filtre</a>, comme <a href="mod_include.html">INCLUDES</a>, pour générer un contenu basé
240     sur <code>PATH_INFO</code>. Le gestionnaire de base va en général
241     rejeter la requête, et vous pouvez utiliser la configuration
242     suivante pour utiliser un tel script :</p>
243
244     <div class="example"><p><code>
245       &lt;Files "mes-chemins.shtml"&gt;<br />
246       <span class="indent">
247         Options +Includes<br />
248         SetOutputFilter INCLUDES<br />
249         AcceptPathInfo On<br />
250       </span>
251       &lt;/Files&gt;
252     </code></p></div>
253
254
255 </div>
256 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
257 <div class="directive-section"><h2><a name="AccessFileName" id="AccessFileName">AccessFileName</a> <a name="accessfilename" id="accessfilename">Directive</a></h2>
258 <table class="directive">
259 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nom du fichier de configuration distribué</td></tr>
260 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AccessFileName <var>nom-du-fichier</var>
261 [<var>nom-du-fichier</var>] ...</code></td></tr>
262 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AccessFileName .htaccess</code></td></tr>
263 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
264 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
265 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
266 </table>
267     <p>Au cours du traitement d'une requête, le serveur recherche le
268     premier fichier de configuration existant à partir de la liste
269     de noms dans chaque répertoire composant le chemin du document, à
270     partir du moment où les fichiers de configuration distribués sont <a href="#allowoverride">activés pour ce répertoire</a>. Par exemple
271     :</p>
272
273     <div class="example"><p><code>
274       AccessFileName .acl
275     </code></p></div>
276
277     <p>avant de renvoyer le document
278     <code>/usr/local/web/index.html</code>, le serveur va rechercher les
279     fichiers <code>/.acl</code>, <code>/usr/.acl</code>,
280     <code>/usr/local/.acl</code> et <code>/usr/local/web/.acl</code>
281     pour y lire d'éventuelles directives, à moins quelles n'aient été
282     désactivées avec</p>
283
284     <div class="example"><p><code>
285       &lt;Directory /&gt;<br />
286       <span class="indent">
287         AllowOverride None<br />
288       </span>
289       &lt;/Directory&gt;
290     </code></p></div>
291
292 <h3>Voir aussi</h3>
293 <ul>
294 <li><code class="directive"><a href="#allowoverride">AllowOverride</a></code></li>
295 <li><a href="../configuring.html">Fichiers de configuration</a></li>
296 <li><a href="../howto/htaccess.html">Fichiers .htaccess</a></li>
297 </ul>
298 </div>
299 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
300 <div class="directive-section"><h2><a name="AddDefaultCharset" id="AddDefaultCharset">AddDefaultCharset</a> <a name="adddefaultcharset" id="adddefaultcharset">Directive</a></h2>
301 <table class="directive">
302 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Paramètre jeu de caractères par défaut à ajouter quand le
303 type de contenu d'une réponse est <code>text/plain</code> ou
304 <code>text/html</code></td></tr>
305 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AddDefaultCharset On|Off|<var>jeu de caractères</var></code></td></tr>
306 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AddDefaultCharset Off</code></td></tr>
307 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
308 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
309 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
310 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
311 </table>
312     <p>Cette directive spécifie une valeur par défaut pour le paramètre
313     jeu de caractères du type de média (le nom d'un codage de
314     caractères) à ajouter à une réponse, si et seulement si le type de
315     contenu de la réponse est soit <code>text/plain</code>, soit
316     <code>text/html</code>. Ceci va remplacer
317     tout jeu de caractères spécifié dans le corps de la réponse via un
318     élément <code>META</code>, bien que cet effet dépende en fait
319     souvent de la configuration du client de l'utilisateur. La
320     définition de <code>AddDefaultCharset Off</code> désactive cette
321     fonctionnalité. <code>AddDefaultCharset On</code> ajoute un jeu de
322     caractères par défaut de <code>iso-8859-1</code>. Toute autre valeur
323     peut être définie via le paramètre <var>jeu de caractères</var>, qui
324     doit appartenir à la liste des <a href="http://www.iana.org/assignments/character-sets">valeurs de
325     jeux de caractères enregistrés par l'IANA</a> à utiliser dans les
326     types de média Internet (types MIME).
327     Par exemple :</p>
328
329     <div class="example"><p><code>
330       AddDefaultCharset utf-8
331     </code></p></div>
332
333     <p>La directive <code class="directive">AddDefaultCharset</code> ne doit
334     être utilisée que lorsque toutes les ressources textes auxquelles
335     elle s'applique possèdent le jeu de caractère spécifié, et qu'il est
336     trop contraignant de définir leur jeu de caractères
337     individuellement. Un exemple de ce type est l'ajout du paramètre jeu
338     de caractères aux ressources comportant un contenu généré, comme les
339     scripts CGI hérités qui peuvent être vulnérables à des attaques de
340     type cross-site scripting à cause des données utilisateurs incluses
341     dans leur sortie. Notez cependant qu'une meilleur solution consiste
342     à corriger (ou supprimer) ces scripts, car la définition d'un jeu de
343     caractères par défaut ne protège pas les utilisateurs qui ont activé
344     la fonctionnalité "Détection automatique de l'encodage des
345     caractères" dans leur navigateur.</p>
346
347 <h3>Voir aussi</h3>
348 <ul>
349 <li><code class="directive"><a href="../mod/mod_mime.html#addcharset">AddCharset</a></code></li>
350 </ul>
351 </div>
352 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
353 <div class="directive-section"><h2><a name="AllowEncodedSlashes" id="AllowEncodedSlashes">AllowEncodedSlashes</a> <a name="allowencodedslashes" id="allowencodedslashes">Directive</a></h2>
354 <table class="directive">
355 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine si les séparateurs de chemin encodés sont
356 autorisés à transiter dans les URLs tels quels</td></tr>
357 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AllowEncodedSlashes On|Off</code></td></tr>
358 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AllowEncodedSlashes Off</code></td></tr>
359 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
360 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
361 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
362 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible dans Apache httpd version 2.0.46 et
363 supérieures</td></tr>
364 </table>
365     <p>La directive <code class="directive">AllowEncodedSlashes</code> permet
366     l'utilisation des URLs contenant des séparateurs de chemin encodés
367     (<code>%2F</code> pour <code>/</code> et même <code>%5C</code> pour
368     <code>\</code> sur les systèmes concernés). Habituellement, ces URLs
369     sont rejetées avec un code d'erreur 404 (Not found).</p>
370
371     <p>Définir <code class="directive">AllowEncodedSlashes</code> à
372     <code>On</code> est surtout utile en association avec
373     <code>PATH_INFO</code>.</p>
374
375     <div class="note"><h3>Note</h3>
376       <p>Permettre les slashes encodés n'implique <em>pas</em> leur
377       <em>décodage</em>. Toutes les occurrences de <code>%2F</code> ou
378       <code>%5C</code> (<em>seulement</em> sur les systèmes concernés)
379       seront laissés telles quelles dans la chaîne de l'URL décodée.</p>
380     </div>
381
382 <h3>Voir aussi</h3>
383 <ul>
384 <li><code class="directive"><a href="#acceptpathinfo">AcceptPathInfo</a></code></li>
385 </ul>
386 </div>
387 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
388 <div class="directive-section"><h2><a name="AllowOverride" id="AllowOverride">AllowOverride</a> <a name="allowoverride" id="allowoverride">Directive</a></h2>
389 <table class="directive">
390 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Types de directives autorisées dans les fichiers
391 <code>.htaccess</code></td></tr>
392 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>AllowOverride All|None|<var>type directive</var>
393 [<var>type directive</var>] ...</code></td></tr>
394 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>AllowOverride All</code></td></tr>
395 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
396 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
397 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
398 </table>
399     <p>Lorsque le serveur trouve un fichier <code>.htaccess</code> (dont
400     le nom est défini par la directive <code class="directive"><a href="#accessfilename">AccessFileName</a></code>), il doit savoir lesquelles
401     des directives placées dans ce fichier sont autorisées à modifier la
402     configuration préexistante.</p>
403
404     <div class="note"><h3>Valable seulement dans les sections
405     &lt;Directory&gt;</h3>
406     La directive <code class="directive">AllowOverride</code> ne peut être
407     utilisée que dans les sections <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> définies sans expressions
408     rationnelles, et non dans les sections <code class="directive"><a href="#location">&lt;Location&gt;</a></code>, <code class="directive"><a href="#directorymatch">&lt;DirectoryMatch&gt;</a></code> ou
409     <code class="directive"><a href="#files">&lt;Files&gt;</a></code>.
410     </div>
411
412     <p>Lorsque cette directive est définie à <code>None</code>, les
413     fichiers <a href="#accessfilename">.htaccess</a> sont totalement
414     ignorés. Dans ce cas, le serveur n'essaiera même pas de lire les
415     fichiers <code>.htaccess</code> du système de fichiers.</p>
416
417     <p>Lorsque cette directive est définie à <code>All</code>, toute
418     directive valable dans le <a href="directive-dict.html#Context">Contexte</a> .htaccess sera
419     autorisée dans les fichiers <code>.htaccess</code>.</p>
420
421     <p>L'argument <var>type directive</var> peut contenir les
422     groupements de directives suivants :</p>
423
424     <dl>
425       <dt>AuthConfig</dt>
426
427       <dd>
428
429       Permet l'utilisation des directives d'autorisation (<code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></code>,
430       <code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmuserfile">AuthDBMUserFile</a></code>,
431       <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>,
432       <code class="directive"><a href="../mod/mod_authn_core.html#authname">AuthName</a></code>,
433       <code class="directive"><a href="../mod/mod_authn_core.html#authtype">AuthType</a></code>, <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>, <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code>, <em>etc...</em>).</dd>
434
435       <dt>FileInfo</dt>
436
437       <dd>
438       Permet l'utilisation des directives qui contrôlent les types de
439       documents (directives  <code class="directive"><a href="#errordocument">ErrorDocument</a></code>, <code class="directive"><a href="#forcetype">ForceType</a></code>, <code class="directive"><a href="../mod/mod_negotiation.html#languagepriority">LanguagePriority</a></code>,
440       <code class="directive"><a href="#sethandler">SetHandler</a></code>, <code class="directive"><a href="#setinputfilter">SetInputFilter</a></code>, <code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code>, et directives du
441       module <code class="module"><a href="../mod/mod_mime.html">mod_mime</a></code> Add* et Remove*), des metadonnées
442       des documents (<code class="directive"><a href="../mod/mod_headers.html#header">Header</a></code>, <code class="directive"><a href="../mod/mod_headers.html#requestheader">RequestHeader</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#setenvif">SetEnvIf</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookieexpires">CookieExpires</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiedomain">CookieDomain</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiestyle">CookieStyle</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookietracking">CookieTracking</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiename">CookieName</a></code>), des directives du
443       module <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> <code class="directive"><a href="../mod/mod_rewrite.html#rewriteengine">RewriteEngine</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriteoptions">RewriteOptions</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritecond">RewriteCond</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>) et de la directive
444       <code class="directive"><a href="../mod/mod_actions.html#action">Action</a></code> du module
445       <code class="module"><a href="../mod/mod_actions.html">mod_actions</a></code>.
446       </dd>
447
448       <dt>Indexes</dt>
449
450       <dd>
451       Permet l'utilisation des directives qui contrôlent l'indexation
452       des répertoires (<code class="directive"><a href="../mod/mod_autoindex.html#adddescription">AddDescription</a></code>,
453       <code class="directive"><a href="../mod/mod_autoindex.html#addicon">AddIcon</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#addiconbyencoding">AddIconByEncoding</a></code>,
454       <code class="directive"><a href="../mod/mod_autoindex.html#addiconbytype">AddIconByType</a></code>,
455       <code class="directive"><a href="../mod/mod_autoindex.html#defaulticon">DefaultIcon</a></code>, <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#fancyindexing">FancyIndexing</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#headername">HeaderName</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexignore">IndexIgnore</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexoptions">IndexOptions</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#readmename">ReadmeName</a></code>,
456       <em>etc...</em>).</dd>
457
458       <dt>Limit</dt>
459
460       <dd>
461       Permet l'utilisation des directives contrôlant l'accès au serveur
462       (<code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code>, <code class="directive"><a href="../mod/mod_authz_host.html#deny">Deny</a></code> et <code class="directive"><a href="../mod/mod_authz_host.html#order">Order</a></code>).</dd>
463
464       <dt>Options[=<var>Option</var>,...]</dt>
465
466       <dd>
467       Permet l'utilisation des directives contrôlant les fonctionnalités
468       spécifiques d'un répertoire (<code class="directive"><a href="#options">Options</a></code> et <code class="directive"><a href="../mod/mod_include.html#xbithack">XBitHack</a></code>). "Options" doit être
469       suivi d'un signe "égal", puis d'une liste d'options séparées par des
470       virgules (pas d'espaces) ; ces options doivent être définies à
471       l'aide de la commande <code class="directive"><a href="#options">Options</a></code>.</dd>
472     </dl>
473
474     <p>Exemple :</p>
475
476     <div class="example"><p><code>
477       AllowOverride AuthConfig Indexes
478     </code></p></div>
479
480     <p>Dans l'exemple ci-dessus, toutes les directives qui ne font
481     partie ni du groupe <code>AuthConfig</code>, ni du groupe
482     <code>Indexes</code>, provoquent une erreur "internal
483     server error".</p>
484
485     <div class="note"><p>Pour des raisons de sécurité et de performance, ne
486     définissez pas <code>AllowOverride</code> à autre chose que
487     <code>None</code> dans votre bloc <code>&lt;Directory /&gt;</code>.
488     Recherchez plutôt (ou créez) le bloc <code>&lt;Directory&gt;</code>
489     qui se réfère au répertoire où vous allez précisément placer un
490     fichier <code>.htaccess</code>.</p>
491     </div>
492
493 <h3>Voir aussi</h3>
494 <ul>
495 <li><code class="directive"><a href="#accessfilename">AccessFileName</a></code></li>
496 <li><a href="../configuring.html">Configuration Files</a></li>
497 <li><a href="../howto/htaccess.html">.htaccess Files</a></li>
498 </ul>
499 </div>
500 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
501 <div class="directive-section"><h2><a name="CGIMapExtension" id="CGIMapExtension">CGIMapExtension</a> <a name="cgimapextension" id="cgimapextension">Directive</a></h2>
502 <table class="directive">
503 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Technique permettant de localiser l'interpréteur des
504 scripts CGI</td></tr>
505 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CGIMapExtension <var>chemin CGI</var> <var>.extension</var></code></td></tr>
506 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
507 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
508 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
509 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
510 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>NetWare uniquement</td></tr>
511 </table>
512     <p>Cette directive permet de contrôler la manière dont Apache httpd trouve
513     l'interpréteur servant à exécuter les scripts CGI. Par exemple, avec
514     la définition <code>CGIMapExtension sys:\foo.nlm .foo</code>, tous
515     les fichiers scripts CGI possédant une extension <code>.foo</code>
516     seront passés à l'interpréteur FOO.</p>
517
518 </div>
519 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
520 <div class="directive-section"><h2><a name="ContentDigest" id="ContentDigest">ContentDigest</a> <a name="contentdigest" id="contentdigest">Directive</a></h2>
521 <table class="directive">
522 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la génération d'un en-tête <code>Content-MD5</code>
523 dans la réponse HTTP</td></tr>
524 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ContentDigest On|Off</code></td></tr>
525 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ContentDigest Off</code></td></tr>
526 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
527 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>Options</td></tr>
528 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
529 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
530 </table>
531     <p>Cette directive active la génération d'un en-tête
532     <code>Content-MD5</code> selon les définitions des RFC 1864 et
533     2616.</p>
534
535     <p>MD5 est un algorithme permettant de générer un condensé (parfois
536     appelé "empreinte") à partir de données d'une taille aléatoire ; le
537     degré de précision est tel que la moindre altération des données
538     d'origine entraîne une altération de l'empreinte.</p>
539
540     <p>L'en-tête <code>Content-MD5</code> permet de vérifier
541     l'intégrité de la réponse HTTP dans son ensemble. Un serveur mandataire
542     ou un client peut utiliser cet en-tête pour rechercher une
543     éventuelle modification accidentelle de la réponse au cours de sa
544     transmission. Exemple d'en-tête :</p>
545
546     <div class="example"><p><code>
547       Content-MD5: AuLb7Dp1rqtRtxz2m9kRpA==
548     </code></p></div>
549
550     <p>Notez que des problèmes de performances peuvent affecter votre
551     serveur, car l'empreinte est générée pour chaque requête (il n'y a
552     pas de mise en cache).</p>
553
554     <p>L'en-tête <code>Content-MD5</code> n'est envoyé qu'avec les
555     documents servis par le module <code class="module"><a href="../mod/core.html">core</a></code>, à l'exclusion
556     de tout autre module. Ainsi, les documents SSI, les sorties de
557     scripts CGI, et les réponses à des requêtes partielles (byte range)
558     ne comportent pas cet en-tête.</p>
559
560 </div>
561 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
562 <div class="directive-section"><h2><a name="DefaultType" id="DefaultType">DefaultType</a> <a name="defaulttype" id="defaulttype">Directive</a></h2>
563 <table class="directive">
564 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Les seuls effets de cette directive sont des émissions
565 d'avertissements si sa valeur est différente de <code>none</code>. Dans
566 les versions précédentes, DefaultType permettait de spécifier un type de
567 média à assigner par défaut au contenu d'une réponse pour lequel aucun
568 autre type de média n'avait été trouvé.
569 </td></tr>
570 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>DefaultType <var>type média|none</var></code></td></tr>
571 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>DefaultType none</code></td></tr>
572 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
573 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
574 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
575 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
576 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>L'argument <code>none</code> est disponible dans les
577 versions d'Apache httpd 2.2.7 et supérieures. Tous les autres choix sont
578 DESACTIVÉS à partir des version 2.3.x.</td></tr>
579 </table>
580     <p>Cette directive a été désactivée. Pour la compatibilité
581     ascendante avec les anciens fichiers de configuration, elle peut
582     être spécifiée avec la valeur <code>none</code>, c'est à dire sans
583     type de médium par défaut. Par exemple :</p>
584
585     <div class="example"><p><code>
586       DefaultType None
587     </code></p></div>
588     <p><code>DefaultType None</code> n'est disponible que dans les
589     versions d'Apache 2.2.7 et supérieures.</p>
590
591     <p>Utilisez le fichier de configuration mime.types et la directive
592     <code class="directive"><a href="../mod/mod_mime.html#addtype">AddType</a></code> pour configurer
593     l'assignement d'un type de médium via les extensions de fichiers, ou
594     la directive <code class="directive"><a href="#forcetype">ForceType</a></code> pour
595     attribuer un type de médium à des ressources spécifiques. Dans le
596     cas contraire, le serveur enverra sa réponse sans champ d'en-tête
597     Content-Type, et le destinataire devra déterminer lui-même le type
598     de médium.</p>
599
600 </div>
601 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
602 <div class="directive-section"><h2><a name="Define" id="Define">Define</a> <a name="define" id="define">Directive</a></h2>
603 <table class="directive">
604 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Permet de définir l'existence d'une variable</td></tr>
605 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Define <var>nom variable</var></code></td></tr>
606 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
607 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
608 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
609 </table>
610     <p>Cette directive produit le même effet que l'argument
611     <code>-D</code> du programme <code class="program"><a href="../programs/httpd.html">httpd</a></code>.</p>
612     <p>Elle permet de faire basculer le fonctionnement de sections
613     <code class="directive"><a href="#ifdefine">&lt;IfDefine&gt;</a></code> sans
614     avoir à modifier les arguments de l'option <code>-D</code> dans
615     aucun script de démarrage.</p>
616
617 </div>
618 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
619 <div class="directive-section"><h2><a name="Directory" id="Directory">&lt;Directory&gt;</a> <a name="directory" id="directory">Directive</a></h2>
620 <table class="directive">
621 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Regroupe un ensemble de directives qui ne s'appliquent
622 qu'au répertoire concerné du système de fichiers et à ses
623 sous-répertoires</td></tr>
624 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;Directory <var>chemin répertoire</var>&gt;
625 ... &lt;/Directory&gt;</code></td></tr>
626 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
627 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
628 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
629 </table>
630     <p>Les balises <code class="directive">&lt;Directory&gt;</code> et
631     <code>&lt;/Directory&gt;</code> permettent de regrouper un ensemble
632     de directives qui ne s'appliquent qu'au répertoire précisé
633     et à ses sous-répertoires. Toute directive
634     autorisée dans un contexte de répertoire peut être utilisée.
635     <var>chemin répertoire</var> est soit le chemin absolu d'un
636     répertoire, soit une chaîne de caractères avec caractères génériques
637     utilisant la comparaison Unix de style shell. Dans une chaîne de
638     caractères avec caractères génériques, <code>?</code> correspond à
639     un caractère quelconque, et <code>*</code> à toute chaîne de
640     caractères. Les intervalles de caractères <code>[]</code> sont aussi
641     autorisés. Aucun caractère générique ne peut remplacer le caractère
642     `/', si bien que l'expression <code>&lt;Directory
643     /*/public_html&gt;</code> ne conviendra pas pour le chemin
644      * <code>/home/user/public_html</code>, alors que <code>&lt;Directory
645     /home/*/public_html&gt;</code> conviendra. Exemple :</p>
646
647     <div class="example"><p><code>
648       &lt;Directory /usr/local/httpd/htdocs&gt;<br />
649       <span class="indent">
650         Options Indexes FollowSymLinks<br />
651       </span>
652       &lt;/Directory&gt;
653     </code></p></div>
654
655     <div class="note">
656       <p>Soyez prudent avec l'argument <var>chemin répertoire</var> : il
657       doit correspondre exactement au chemin du système de fichier
658       qu'Apache httpd utilise pour accéder aux fichiers. Les directives
659       comprises dans une section <code>&lt;Directory&gt;</code> ne
660       s'appliqueront pas aux fichiers du même répertoire auxquels on
661       aura accédé via un chemin différent, per exemple via un lien
662       symbolique.</p>
663     </div>
664
665     <p> Les <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">Expressions rationnelles</a>
666     peuvent aussi être utilisées en ajoutant le caractère
667     <code>~</code>. Par exemple :</p>
668
669     <div class="example"><p><code>
670       &lt;Directory ~ "^/www/.*/[0-9]{3}"&gt;
671     </code></p></div>
672
673     <p>pourra correspondre à tout répertoire situé dans /www/ et dont le
674     nom se compose de trois chiffres.</p>
675
676     <p>Si plusieurs sections <code class="directive">&lt;Directory&gt;</code> (sans expression rationnelle)
677     correspondent au répertoire (ou à un de ses parents) qui contient le
678     document, les directives de la section <code class="directive">&lt;Directory&gt;</code> dont le chemin est le plus
679     court sont appliquées en premier, en s'intercalant avec les
680     directives des fichiers <a href="#accessfilename">.htaccess</a>. Par
681     exemple, avec</p>
682
683     <div class="example"><p><code>
684       &lt;Directory /&gt;<br />
685       <span class="indent">
686         AllowOverride None<br />
687       </span>
688       &lt;/Directory&gt;<br />
689       <br />
690       &lt;Directory /home/&gt;<br />
691       <span class="indent">
692         AllowOverride FileInfo<br />
693       </span>
694       &lt;/Directory&gt;
695     </code></p></div>
696
697     <p>l'accès au document <code>/home/web/dir/doc.html</code> emprunte
698     le chemin suivant :</p>
699
700     <ul>
701       <li>Aplication de la directive <code>AllowOverride None</code>
702       (qui désactive les fichiers <code>.htaccess</code>).</li>
703
704       <li>Application de la directive <code>AllowOverride
705       FileInfo</code> (pour le répertoire <code>/home</code>).</li>
706
707       <li>Application de toute directive <code>FileInfo</code> qui se
708       trouverait dans d'éventuels fichiers <code>/home/.htaccess</code>,
709       <code>/home/web/.htaccess</code> ou
710       <code>/home/web/dir/.htaccess</code>, dans cet ordre.</li>
711     </ul>
712
713     <p>Les directives associées aux répertoires sous forme d'expressions
714     rationnelles ne sont prises en compte qu'une fois toutes les
715     directives des sections sans expressions rationnelles appliquées.
716     Alors, tous les répertoires avec expressions rationnelles sont
717     testés selon l'ordre dans lequel ils apparaissent dans le fichier de
718     configuration. Par exemple, avec</p>
719
720     <div class="example"><p><code>
721       &lt;Directory ~ abc$&gt;<br />
722       <span class="indent">
723         # ... directives here ...<br />
724       </span>
725       &lt;/Directory&gt;
726     </code></p></div>
727
728     <p>la section avec expression rationnelle ne sera prise en compte
729     qu'après les sections <code class="directive">&lt;Directory&gt;</code> sans expression rationnelle
730     et les fichiers <code>.htaccess</code>. Alors, l'expression
731     rationnelle conviendra pour <code>/home/abc/public_html/abc</code>
732     et la section <code class="directive">&lt;Directory&gt;</code>
733     correspondante s'appliquera.</p>
734
735    <p><strong>Notez que la politique d'accès par défaut
736    dans les sections <code>&lt;Directory /&gt;</code> est <code>Allow
737    from All</code>. Ceci signifie qu'Apache httpd va servir tout fichier
738    correspondant à une URL. Il est recommandé de modifier cette
739    situation à l'aide d'un bloc du style</strong></p>
740
741     <div class="example"><p><code>
742       &lt;Directory /&gt;<br />
743       <span class="indent">
744         Order Deny,Allow<br />
745         Deny from All<br />
746       </span>
747       &lt;/Directory&gt;
748     </code></p></div>
749
750     <p><strong>puis d'affiner la configuration pour les répertoires que vous
751     voulez rendre accessibles. Voir la page <a href="../misc/security_tips.html">Conseils à propos de sécurité</a>
752     pour plus de détails.</strong></p>
753
754     <p>Les sections <code class="directive">&lt;Directory&gt;</code> se situent
755     dans le fichier <code>httpd.conf</code>. Les directives <code class="directive">&lt;Directory&gt;</code> ne peuvent pas être imbriquées
756     et ne sont pas autorisées dans les sections <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> ou <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code>.</p>
757
758 <h3>Voir aussi</h3>
759 <ul>
760 <li><a href="../sections.html">Comment fonctionnent les sections
761 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour des
762 explications à propos de la manière dont ces différentes sections se
763 combinent entre elles à la réception d'une requête</li>
764 </ul>
765 </div>
766 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
767 <div class="directive-section"><h2><a name="DirectoryMatch" id="DirectoryMatch">&lt;DirectoryMatch&gt;</a> <a name="directorymatch" id="directorymatch">Directive</a></h2>
768 <table class="directive">
769 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Regroupe des directives qui s'appliquent à des répertoires
770 du système de fichiers correspondant à une expression rationnelle</td></tr>
771 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;DirectoryMatch <var>regex</var>&gt;
772 ... &lt;/DirectoryMatch&gt;</code></td></tr>
773 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
774 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
775 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
776 </table>
777     <p>Les balises <code class="directive">&lt;DirectoryMatch&gt;</code>
778     et <code>&lt;/DirectoryMatch&gt;</code> permettent de regrouper un
779     ensemble de directives qui ne s'appliqueront qu'au répertoire
780     précisé, comme pour la section <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>. Cependant, le
781     répertoire est précisé sous la forme d'une <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a>. Par exemple :</p>
782
783     <div class="example"><p><code>
784       &lt;DirectoryMatch "^/www/(.+/)?[0-9]{3}"&gt;
785     </code></p></div>
786
787     <p>conviendrait pour les sous-répertoires de <code>/www/</code> dont
788     le nom se compose de trois chiffres.</p>
789
790     <div class="note"><h3>Compatibilité</h3>
791       Avant la version 2.3.9, cette directive s'appliquait aussi aux
792       sous-répertoires (comme la directive <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>), et ne tenait pas compte du
793       symbole de fin de ligne ($). Depuis la version 2.3.9, seuls les
794       répertoires qui correspondent à l'expression sont affectés par les
795       directives contenues dans la section.
796     </div>
797
798     <div class="note"><h3>slash de fin</h3>
799       Cette directive s'applique aux requêtes pour des répertoires avec
800       ou sans slash de fin ; les expressions contenant un symbole de fin
801       de ligne ($) doivent donc faire l'objet d'une attention
802       particulière.
803     </div>
804
805 <h3>Voir aussi</h3>
806 <ul>
807 <li><code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>
808 pour une description de la manière dont les expressions rationnelles
809 sont traitées en présence d'autres sections <code class="directive">&lt;Directory&gt;</code> sans expressions rationnelles</li>
810 <li><a href="../sections.html">Comment fonctionnent les sections
811 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour une
812 explication à propos de la manière dont ces différentes sections se
813 combinent entre elles à la réception d'une requête</li>
814 </ul>
815 </div>
816 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
817 <div class="directive-section"><h2><a name="DocumentRoot" id="DocumentRoot">DocumentRoot</a> <a name="documentroot" id="documentroot">Directive</a></h2>
818 <table class="directive">
819 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Racine principale de l'arborescence des documents visible
820 depuis Internet</td></tr>
821 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>DocumentRoot <var>chemin répertoire</var></code></td></tr>
822 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>DocumentRoot /usr/local/apache/htdocs</code></td></tr>
823 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
824 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
825 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
826 </table>
827     <p>Cette directive permet de définir le répertoire à partir duquel
828     <code class="program"><a href="../programs/httpd.html">httpd</a></code> va servir les fichiers. S'il ne correspond
829     pas à un <code class="directive"><a href="../mod/mod_alias.html#alias">Alias</a></code>, le chemin
830     de l'URL sera ajouté par le serveur à la racine des documents afin
831     de construire le chemin du document recherché. Exemple :</p>
832
833     <div class="example"><p><code>
834       DocumentRoot /usr/web
835     </code></p></div>
836
837     <p>un accès à <code>http://www.my.host.com/index.html</code> se
838     réfère alors à <code>/usr/web/index.html</code>. Si <var>chemin
839     répertoire</var> n'est pas un chemin absolu, il est considéré comme
840     relatif au chemin défini par la directive <code class="directive"><a href="#serverroot">ServerRoot</a></code>.</p>
841
842     <p>Le répertoire défini par la directive
843     <code class="directive">DocumentRoot</code> ne doit pas comporter de slash
844     final.</p>
845
846 <h3>Voir aussi</h3>
847 <ul>
848 <li><a href="../urlmapping.html#documentroot">Mise en
849 correspondance des URLs avec le système de fichiers</a></li>
850 </ul>
851 </div>
852 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
853 <div class="directive-section"><h2><a name="EnableMMAP" id="EnableMMAP">EnableMMAP</a> <a name="enablemmap" id="enablemmap">Directive</a></h2>
854 <table class="directive">
855 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Utilise la projection en mémoire (Memory-Mapping) pour
856 lire les fichiers pendant qu'ils sont servis</td></tr>
857 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>EnableMMAP On|Off</code></td></tr>
858 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>EnableMMAP On</code></td></tr>
859 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
860 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
861 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
862 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
863 </table>
864     <p>Cette directive définit si <code class="program"><a href="../programs/httpd.html">httpd</a></code> peut utiliser
865     la projection en mémoire (Memory-Mapping) quand il doit lire le contenu
866     d'un fichier pendant qu'il est servi. Par défaut, lorsque le
867     traitement d'une requête requiert l'accès aux données contenues dans
868     un fichier -- par exemple, pour servir un fichier interprété par le
869     serveur à l'aide de <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> -- Apache httpd projette
870     le fichier en mémoire si le système d'exploitation le permet.</p>
871
872     <p>Cette projection en mémoire induit parfois une amélioration des
873     performances. Sur certains systèmes cependant, il est préférable de
874     désactiver la projection en mémoire afin d'éviter certains problèmes
875     opérationnels :</p>
876
877     <ul>
878     <li>Sur certains systèmes multi-processeurs, la projection en
879     mémoire peut dégrader les performances du programme
880     <code class="program"><a href="../programs/httpd.html">httpd</a></code>.</li>
881     
882     </ul>
883
884     <p>Pour les configurations de serveur sujettes à ce genre de
885     problème, il est préférable de désactiver la projection en mémoire
886     des fichiers servis en spécifiant :</p>
887     <p>S'il fait l'objet d'une projection en mémoire par
888     <code class="program"><a href="../programs/httpd.html">httpd</a></code>, la suppression ou la troncature d'un
889     fichier peut provoquer un crash de <code class="program"><a href="../programs/httpd.html">httpd</a></code> avec une
890     erreur de segmentation.</p>
891     <div class="example"><p><code>
892       EnableMMAP Off
893     </code></p></div>
894
895     <p>Pour les montages NFS, cette fonctionnalité peut être
896     explicitement désactivée pour les fichiers concernés en spécifiant
897     :</p>
898
899     <div class="example"><p><code>
900       &lt;Directory "/chemin vers montage NFS"&gt;
901       <span class="indent">
902         EnableMMAP Off
903       </span>
904       &lt;/Directory&gt;
905     </code></p></div>
906
907 </div>
908 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
909 <div class="directive-section"><h2><a name="EnableSendfile" id="EnableSendfile">EnableSendfile</a> <a name="enablesendfile" id="enablesendfile">Directive</a></h2>
910 <table class="directive">
911 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Utilise le support sendfile du noyau pour servir les
912 fichiers aux clients</td></tr>
913 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>EnableSendfile On|Off</code></td></tr>
914 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>EnableSendfile Off</code></td></tr>
915 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
916 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
917 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
918 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
919 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible dans les versions 2.0.44 et
920 supérieures. Par défaut à Off depuis la version 2.3.9.</td></tr>
921 </table>
922     <p>Cette directive définit si le programme <code class="program"><a href="../programs/httpd.html">httpd</a></code>
923     peut utiliser le support sendfile du noyau pour transmettre le
924     contenu des fichiers aux clients. Par défaut, lorsque le traitement
925     d'une requête ne requiert pas l'accès aux données contenues dans un
926     fichier -- par exemple, pour la transmission d'un fichier statique
927     -- Apache httpd utilise sendfile pour transmettre le contenu du fichier
928     sans même lire ce dernier, si le système d'exploitation le
929     permet.</p>
930
931     <p>Ce mécanisme sendfile évite la séparation des opérations de
932     lecture et d'envoi, ainsi que les réservations de tampons. sur
933     certains systèmes cependant, ou sous certains systèmes de fichiers,
934     il est préférable de désactiver cette fonctionnalité afin d'éviter
935     certains problèmes opérationnels :</p>
936
937     <ul>
938     <li>Certains systèmes peuvent présenter un support sendfile
939     défectueux que le système de compilation n'a pas détecté, en
940     particulier si les exécutables ont été compilés sur une autre
941     machine, puis copiés sur la première avec un support sendfile
942     défectueux.</li>
943     <li>Sous Linux, l'utilisation de sendfile induit des bogues lors de
944     la récupération des paquets de vérification TCP (TCP-checksum) avec
945     certaines cartes réseau lorsqu'on utilise IPv6.</li>
946     <li>Sous Linux sur Itanium, sendfile peut s'avérer incapable de
947     traiter les fichiers de plus de 2 Go.</li>
948     <li>Avec un montage réseau de <code class="directive"><a href="#documentroot">DocumentRoot</a></code> (par exemple NFS, SMB, CIFS,
949     FUSE), le
950     noyau peut s'avérer incapable de servir un fichier de ce montage
951     réseau en passant par son propre cache.</li>
952     </ul>
953
954     <p>Pour les configurations de serveur non sujettes à ce genre de
955     problème, vous pouvez activer cette fonctionnalité en
956     spécifiant :</p>
957
958     <div class="example"><p><code>
959       EnableSendfile On
960     </code></p></div>
961
962     <p>Pour les montages réseau, cette fonctionnalité peut être
963     explicitement désactivée pour les fichiers concernés en spécifiant
964     :</p>
965
966     <div class="example"><p><code>
967       &lt;Directory "/chemin vers montage réseau"&gt;
968       <span class="indent">
969         EnableSendfile Off
970       </span>
971       &lt;/Directory&gt;
972     </code></p></div>
973     <p>Veuillez noter que la configuration de la directive
974     <code class="directive">EnableSendfile</code> dans un contexte de répertoire
975     ou de fichier .htaccess n'est pas supportée par
976     <code class="module"><a href="../mod/mod_disk_cache.html">mod_disk_cache</a></code>. Le module ne prend en compte la
977     définition de <code class="directive">EnableSendfile</code> que dans un
978     contexte global.
979     </p>
980
981 </div>
982 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
983 <div class="directive-section"><h2><a name="ErrorDocument" id="ErrorDocument">ErrorDocument</a> <a name="errordocument" id="errordocument">Directive</a></h2>
984 <table class="directive">
985 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Document que le serveur renvoie au client en cas
986 d'erreur</td></tr>
987 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ErrorDocument <var>code erreur</var> <var>document</var></code></td></tr>
988 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
989 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
990 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
991 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
992 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>La syntaxe des guillemets pour les messages textes est
993 différente dans la version 2.0 du serveur HTTP Apache</td></tr>
994 </table>
995     <p>Apache httpd peut traiter les problèmes et les erreurs de quatre
996     manières,</p>
997
998     <ol>
999       <li>afficher un simple message d'erreur au contenu fixe</li>
1000
1001       <li>afficher un message personnalisé</li>
1002
1003       <li>rediriger vers un <var>chemin d'URL</var> local pour traiter
1004       le problème ou l'erreur</li>
1005
1006       <li>rediriger vers une <var>URL</var> externe pour traiter
1007       le problème ou l'erreur</li>
1008     </ol>
1009
1010     <p>La première option constitue le comportement par défaut; pour
1011     choisir une des trois autres options, il faut configurer Apache à
1012     l'aide de la directive <code class="directive">ErrorDocument</code>, suivie
1013     du code de la réponse HTTP et d'une URL ou d'un message. Apache
1014     httpd fournit parfois des informations supplémentaires à propos du
1015     problème ou de l'erreur.</p>
1016
1017     <p>Les URLs peuvent commencer par un slash (/) pour les chemins web
1018     locaux (relatifs au répertoire défini par la directive <code class="directive"><a href="#documentroot">DocumentRoot</a></code>), ou se présenter sous la
1019     forme d'une URL complète que le client pourra résoudre.
1020     Alternativement, un message à afficher par le navigateur pourra être
1021     fourni. Exemples :</p>
1022
1023     <div class="example"><p><code>
1024       ErrorDocument 500 http://foo.example.com/cgi-bin/tester<br />
1025       ErrorDocument 404 /cgi-bin/bad_urls.pl<br />
1026       ErrorDocument 401 /subscription_info.html<br />
1027       ErrorDocument 403 "Désolé, vous n'avez pas l'autorisation d'accès
1028       aujourd'hui"
1029     </code></p></div>
1030
1031     <p>De plus, on peut spécifier la valeur spéciale <code>default</code>
1032     pour indiquer l'utilisation d'un simple message d'Apache httpd codé en
1033     dur. Bien que non nécessaire dans des circonstances normales, la
1034     spécification de la valeur <code>default</code> va permettre de
1035     rétablir l'utilisation du simple message d'Apache httpd codé en dur pour
1036     les configurations qui sans cela, hériteraient d'une directive
1037     <code class="directive">ErrorDocument</code> existante.</p>
1038
1039     <div class="example"><p><code>
1040       ErrorDocument 404 /cgi-bin/bad_urls.pl<br /><br />
1041       &lt;Directory /web/docs&gt;<br />
1042       <span class="indent">
1043         ErrorDocument 404 default<br />
1044       </span>
1045       &lt;/Directory&gt;
1046     </code></p></div>
1047
1048     <p>Notez que lorsque vous spécifiez une directive
1049     <code class="directive">ErrorDocument</code> pointant vers une URL distante
1050     (c'est à dire tout ce qui commence par le préfixe http), le serveur
1051     HTTP Apache va
1052     envoyer une redirection au client afin de lui indiquer où trouver le
1053     document, même dans le cas où ce document se trouve sur le serveur
1054     local. Ceci a de nombreuses conséquences dont la plus importante
1055     réside dans le fait que le client ne recevra pas le code d'erreur
1056     original, mais au contraire un code de statut de redirection. Ceci
1057     peut en retour semer la confusion chez les robots web et divers
1058     clients qui tentent de déterminer la validité d'une URL en examinant
1059     le code de statut. De plus, si vous utilisez une URL distante avec
1060     <code>ErrorDocument 401</code>, le client ne saura pas qu'il doit
1061     demander un mot de passe à l'utilisateur car il ne recevra pas le
1062     code de statut 401. C'est pourquoi, <strong>si vous utilisez une
1063     directive <code>ErrorDocument 401</code>, elle devra faire référence
1064     à un document par le biais d'un chemin local.</strong></p>
1065
1066     <p>Microsoft Internet Explorer (MSIE) ignore par défaut les messages
1067     d'erreur générés par le serveur lorsqu'ils sont trop courts et
1068     remplacent ses propres messages d'erreur "amicaux". Le seuil de
1069     taille varie en fonction du type d'erreur, mais en général, si la
1070     taille de votre message d'erreur est supérieure à 512 octets, il y a
1071     peu de chances pour que MSIE l'occulte, et il sera affiché par ce
1072     dernier. Vous trouverez d'avantage d'informations dans l'article de
1073     la base de connaissances Microsoft <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807">Q294807</a>.</p>
1074
1075     <p>Bien que la plupart des messages d'erreur internes originaux
1076     puissent être remplacés, ceux-ci sont cependant conservés dans
1077     certaines circonstances sans tenir compte de la définition de la
1078     directive <code class="directive"><a href="#errordocument">ErrorDocument</a></code>. En
1079     particulier, en cas de détection d'une requête mal formée, le
1080     processus de traitement normal des requêtes est immédiatement
1081     interrompu, et un message d'erreur interne est renvoyé, ceci afin de
1082     se prémunir contre les problèmes de sécurité liés aux requêtes mal
1083     formées.</p>
1084
1085     <p>Si vous utilisez mod_proxy, il est en général préférable
1086     d'activer <code class="directive"><a href="../mod/mod_proxy.html#proxyerroroverride">ProxyErrorOverride</a></code> afin d'être en
1087     mesure de produire des messages d'erreur personnalisés pour le
1088     compte de votre serveur d'origine. Si vous n'activez pas
1089     ProxyErrorOverride, Apache httpd ne générera pas de messages d'erreur
1090     personnalisés pour le contenu mandaté.</p>
1091
1092
1093 <h3>Voir aussi</h3>
1094 <ul>
1095 <li><a href="../custom-error.html">documentation sur la
1096 personnalisation des réponses</a></li>
1097 </ul>
1098 </div>
1099 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1100 <div class="directive-section"><h2><a name="ErrorLog" id="ErrorLog">ErrorLog</a> <a name="errorlog" id="errorlog">Directive</a></h2>
1101 <table class="directive">
1102 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définition du chemin du journal des erreurs</td></tr>
1103 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code> ErrorLog <var>chemin fichier</var>|syslog[:<var>facility</var>]</code></td></tr>
1104 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows and OS/2)</code></td></tr>
1105 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
1106 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1107 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1108 </table>
1109     <p>La directive <code class="directive">ErrorLog</code> permet de définir le
1110     nom du fichier dans lequel le serveur va journaliser toutes les
1111     erreurs qu'il rencontre. Si le <var>chemin fichier</var> n'est pas
1112     absolu, il est considéré comme relatif au chemin défini par la
1113     directive <code class="directive"><a href="#serverroot">ServerRoot</a></code>.</p>
1114
1115     <div class="example"><h3>Exemple</h3><p><code>
1116     ErrorLog /var/log/httpd/error_log
1117     </code></p></div>
1118
1119     <p>Si le <var>chemin fichier</var> commence par une barre verticale
1120     "<code>(|)</code>", il est considéré comme une commande à lancer pour traiter la
1121     journalisation de l'erreur.</p>
1122
1123     <div class="example"><h3>Exemple</h3><p><code>
1124     ErrorLog "|/usr/local/bin/erreurs_httpd"
1125     </code></p></div>
1126
1127     <p>Voir les notes à propos des <a href="../logs.html#piped">journaux
1128     redirigés</a> pour plus d'informations.</p>
1129
1130     <p>L'utilisation de <code>syslog</code> à la place d'un nom de
1131     fichier active la journalisation via syslogd(8) si le système le
1132     supporte. Le dispositif syslog par défaut est <code>local7</code>,
1133     mais vous pouvez le modifier à l'aide de la syntaxe
1134     <code>syslog:<var>facility</var></code>, où <var>facility</var> peut
1135     être remplacé par un des noms habituellement documentés dans la page
1136     de man syslog(1).</p>
1137
1138     <div class="example"><h3>Exemple</h3><p><code>
1139     ErrorLog syslog:user
1140     </code></p></div>
1141
1142     <p>SECURITE : Voir le document <a href="../misc/security_tips.html#serverroot">conseils à propos de
1143     sécurité</a> pour des détails sur les raisons pour lesquelles votre
1144     sécurité peut être compromise si le répertoire contenant les
1145     fichiers journaux présente des droits en écriture pour tout autre
1146     utilisateur que celui sous lequel le serveur est démarré.</p>
1147     <div class="warning"><h3>Note</h3>
1148       <p>Lors de la spécification d'un chemin de fichier sur les
1149       plates-formes non-Unix, on doit veiller à n'utiliser que des
1150       slashes (/), même si la plate-forme autorise l'utilisation des
1151       anti-slashes (\). Et d'une manière générale, il est recommandé de
1152       n'utiliser que des slashes (/) dans les fichiers de
1153       configuration.</p>
1154     </div>
1155
1156 <h3>Voir aussi</h3>
1157 <ul>
1158 <li><code class="directive"><a href="#loglevel">LogLevel</a></code></li>
1159 <li><a href="../logs.html">Fichiers journaux du serveur HTTP Apache</a></li>
1160 </ul>
1161 </div>
1162 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1163 <div class="directive-section"><h2><a name="ErrorLogFormat" id="ErrorLogFormat">ErrorLogFormat</a> <a name="errorlogformat" id="errorlogformat">Directive</a></h2>
1164 <table class="directive">
1165 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Spécification du format des entrées du journal des erreurs</td></tr>
1166 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code> ErrorLog [connection|request] <var>format</var></code></td></tr>
1167 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
1168 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1169 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1170 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.9 d'Apache</td></tr>
1171 </table>
1172     <p>La directive <code class="directive">ErrorLogFormat</code> permet de
1173     spécifier quelles informations supplémentaires vont être enregistrées
1174     dans le journal des erreurs en plus du message habituel.</p>
1175
1176     <div class="example"><h3>Exemple simple</h3><p><code>
1177         ErrorLogFormat "[%t] [%l] [pid %P] %F: %E: [client %a] %M"
1178     </code></p></div>
1179
1180     <p>La spécification de <code>connection</code> ou
1181     <code>request</code> comme premier paramètre permet de définir des
1182     formats supplémentaires, ce qui a pour effet de journaliser des
1183     informations additionnelles lorsque le premier message est
1184     enregistré respectivement pour une connexion ou une requête
1185     spécifique. Ces informations additionnelles ne sont enregistrées
1186     qu'une seule fois par connexion/requête. Si le traitement d'une
1187     connexion ou d'une requête ne génère aucun message dans le journal,
1188     alors aucune information additionnelle n'est enregistrée.</p>
1189
1190     <p>Il peut arriver que certains items de la chaîne de format ne
1191     produisent aucune sortie. Par exemple, l'en-tête Referer n'est
1192     présent que si le message du journal est associé à une requête et s'il
1193     est généré à un moment où l'en-tête Referer a déjà été lu par le
1194     client. Si aucune sortie n'est générée, le comportement par défaut
1195     consiste à supprimer tout ce qui se trouve entre l'espace précédent
1196     et le suivant. Ceci implique que la ligne de journalisation est
1197     divisée en champs ne contenant pas d'espace séparés par des espaces.
1198     Si un item de la chaîne de format ne génère aucune sortie,
1199     l'ensemble du champ est omis. Par exemple, si l'adresse distante
1200     <code>%a</code> du format <code>[%t] [%l] [%a] %M&nbsp;</code> n'est
1201     pas disponible, les crochets qui l'entourent ne seront eux-mêmes pas
1202     enregistrés. Il est possible d'échapper les espaces par un anti-slash
1203     afin qu'ils ne soient pas considérés comme séparateurs de champs.
1204     La combinaison '%&nbsp;' (pourcentage espace) est un délimiteur de
1205     champ de taille nulle qui ne génère aucune sortie.</p>
1206
1207     <p>Ce comportement peut être changé en ajoutant des modificateurs à
1208     l'item de la chaîne de format. Le modificateur <code>-</code>
1209     (moins) provoque l'enregistrement d'un signe moins si l'item
1210     considéré ne génère aucune sortie. Pour les formats à enregistrement
1211     unique par connexion/requête, il est aussi possible d'utiliser le
1212     modificateur <code>+</code> (plus). Si un item ne générant aucune
1213     sortie possède le modificateur plus, la ligne dans son ensemble est
1214     omise.</p>
1215
1216     <p>Un modificateur de type entier permet d'assigner un niveau de
1217     sévérité à un item de format. L'item considéré ne
1218     sera journalisé que si la sévérité du message n'est pas
1219     plus haute que le niveau de sévérité spécifié. Les
1220     valeurs possibles vont de 1 (alert) à 15 (trace8), en passant par 4
1221     (warn) ou 7 (debug).</p>
1222
1223     <p>Certains items de format acceptent des paramètres supplémentaires
1224     entre accolades.</p>
1225
1226     <table class="bordered"><tr class="header"><th>Chaîne&nbsp;de&nbsp;format</th> <th>Description</th></tr>
1227 <tr><td><code>%%</code></td>
1228         <td>Le signe pourcentage</td></tr>
1229 <tr class="odd"><td><code>%...a</code></td>
1230         <td>Adresse IP et port distants</td></tr>
1231 <tr><td><code>%...A</code></td>
1232         <td>Adresse IP et port locaux</td></tr>
1233 <tr class="odd"><td><code>%...{name}e</code></td>
1234         <td>Variable d'environnement de requête <code>name</code></td></tr>
1235 <tr><td><code>%...E</code></td>
1236         <td>Etat d'erreur APR/OS et chaîne</td></tr>
1237 <tr class="odd"><td><code>%...F</code></td>
1238         <td>Nom du fichier source et numéro de ligne de l'appel du
1239         journal</td></tr>
1240 <tr><td><code>%...{name}i</code></td>
1241         <td>En-tête de requête <code>name</code></td></tr>
1242 <tr class="odd"><td><code>%...k</code></td>
1243         <td>Nombre de requêtes persistantes pour cette connexion</td></tr>
1244 <tr><td><code>%...l</code></td>
1245         <td>Sévérité du message</td></tr>
1246 <tr class="odd"><td><code>%...L</code></td>
1247         <td>Identifiant journal de la requête</td></tr>
1248 <tr><td><code>%...{c}L</code></td>
1249         <td>Identifiant journal de la connexion</td></tr>
1250 <tr class="odd"><td><code>%...{C}L</code></td>
1251         <td>Identifiant journal de la connexion si utilisé dans la
1252         portée de la connexion, vide sinon</td></tr>
1253 <tr><td><code>%...m</code></td>
1254         <td>Nom du module qui effectue la journalisation du message</td></tr>
1255 <tr class="odd"><td><code>%M</code></td>
1256         <td>Le message effectif</td></tr>
1257 <tr><td><code>%...{name}n</code></td>
1258         <td>Note de requête <code>name</code></td></tr>
1259 <tr class="odd"><td><code>%...P</code></td>
1260         <td>Identifiant du processus courant</td></tr>
1261 <tr><td><code>%...T</code></td>
1262         <td>Identifiant du thread courant</td></tr>
1263 <tr class="odd"><td><code>%...t</code></td>
1264         <td>L'heure courante</td></tr>
1265 <tr><td><code>%...{u}t</code></td>
1266         <td>L'heure courante avec les microsecondes</td></tr>
1267 <tr class="odd"><td><code>%...{cu}t</code></td>
1268         <td>L'heure courante au format compact ISO 8601, avec les
1269         microsecondes</td></tr>
1270 <tr><td><code>%...v</code></td>
1271         <td>Le nom de serveur canonique <code class="directive"><a href="#servername">ServerName</a></code> du serveur courant.</td></tr>
1272 <tr class="odd"><td><code>%...V</code></td>
1273         <td>Le nom de serveur du serveur qui sert la requête en accord
1274         avec la définition de la directive <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code>.</td></tr>
1275 <tr><td><code>\&nbsp;</code> (anti-slash espace)</td>
1276         <td>Espace non délimiteur</td></tr>
1277 <tr class="odd"><td><code>%&nbsp;</code> (pourcentage espace)</td>
1278         <td>Délimiteur de champ (aucune sortie)</td></tr>
1279 </table>
1280
1281     <p>L'item de format identifiant journal <code>%L</code> génère un
1282     identifiant unique pour une connexion ou une requête. Il peut servir
1283     à déterminer quelles lignes correspondent à la même connexion ou
1284     requête ou quelle requête est associée à tel connexion. Un item de
1285     format <code>%L</code> est aussi disponible dans le module
1286     <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>, mais il permet dans ce contexte de
1287     corréler les entrées du journal des accès avec celles du journal des
1288     erreurs. Si le module <code class="module"><a href="../mod/mod_unique_id.html">mod_unique_id</a></code> est chargé,
1289     c'est son identifiant unique qui sera utilisé comme identifiant de
1290     journal pour les requêtes.</p>
1291
1292     <div class="example"><h3>Exemple (assez similaire au format par défaut)</h3><p><code>
1293         ErrorLogFormat "[%{u}t] [%-m:%l] [pid %P] %7F: %E: [client\ %a]
1294         %M%&nbsp;,\&nbsp;referer\&nbsp;%{Referer}i"
1295     </code></p></div>
1296
1297     <div class="example"><h3>Exemple (similaire au format 2.2.x)</h3><p><code>
1298         ErrorLogFormat "[%t] [%l] %7F: %E: [client\ %a]
1299         %M%&nbsp;,\&nbsp;referer\&nbsp;%{Referer}i"
1300     </code></p></div>
1301
1302     <div class="example"><h3>Exemple avancé avec identifiants journal de
1303     requête/connexion</h3><p><code>
1304         ErrorLogFormat "[%{uc}t] [%-m:%-l] [R:%L] [C:%{C}L] %7F: %E: %M"<br />
1305         ErrorLogFormat request "[%{uc}t] [R:%L] Request %k on C:%{c}L pid:%P tid:%T"<br />
1306         ErrorLogFormat request "[%{uc}t] [R:%L] UA:'%+{User-Agent}i'"<br />
1307         ErrorLogFormat request "[%{uc}t] [R:%L] Referer:'%+{Referer}i'"<br />
1308         ErrorLogFormat connection "[%{uc}t] [C:%{c}L] local\ %a remote\ %A"<br />
1309     </code></p></div>
1310
1311
1312 <h3>Voir aussi</h3>
1313 <ul>
1314 <li><code class="directive"><a href="#errorlog">ErrorLog</a></code></li>
1315 <li><code class="directive"><a href="#loglevel">LogLevel</a></code></li>
1316 <li><a href="../logs.html">Fichiers journaux du serveur HTTP Apache</a></li>
1317 </ul>
1318 </div>
1319 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1320 <div class="directive-section"><h2><a name="ExtendedStatus" id="ExtendedStatus">ExtendedStatus</a> <a name="extendedstatus" id="extendedstatus">Directive</a></h2>
1321 <table class="directive">
1322 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Extrait des informations d'état étendues pour chaque
1323 requête</td></tr>
1324 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ExtendedStatus On|Off</code></td></tr>
1325 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ExtendedStatus Off</code></td></tr>
1326 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
1327 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1328 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1329 </table>
1330
1331         <p>Cette option permet d'extraire des données supplémentaires
1332         concernant la requête en cours de traitement pour un processus
1333         donné, ainsi qu'un résumé d'utilisation ; vous pouvez accéder à
1334         ces variables pendant l'exécution en configurant
1335         <code class="module"><a href="../mod/mod_status.html">mod_status</a></code>. Notez que d'autres modules sont
1336         susceptibles de s'appuyer sur ce tableau de bord.</p>
1337
1338     <p>Cette directive s'applique au serveur dans son ensemble, et ne
1339     peut pas être activée/désactivée pour un serveur virtuel
1340     particulier. Notez que l'extraction des informations d'état étendues
1341     peut ralentir le serveur. Notez aussi que cette définition ne peut
1342     pas être modifiée au cours d'un redémarrage graceful.</p>
1343
1344     <div class="note">
1345     <p>Notez que le chargement de <code class="module"><a href="../mod/mod_status.html">mod_status</a></code> définit
1346     automatiquement ExtendedStatus à On, et que d'autres modules tiers
1347     sont susceptibles d'en faire de même. De tels modules ont besoin
1348     d'informations détaillées à propos de l'état de tous les processus.
1349     Depuis la version 2.3.6, <code class="module"><a href="../mod/mod_status.html">mod_status</a></code> a définit la
1350     valeur par défaut à On, alors qu'elle était à Off dans les versions
1351     antérieures.</p>
1352     </div>
1353
1354
1355 </div>
1356 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1357 <div class="directive-section"><h2><a name="FileETag" id="FileETag">FileETag</a> <a name="fileetag" id="fileetag">Directive</a></h2>
1358 <table class="directive">
1359 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Caractéristiques de fichier utilisées lors de la génération
1360 de l'en-tête de réponse HTTP ETag pour les fichiers statiques</td></tr>
1361 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>FileETag <var>composant</var> ...</code></td></tr>
1362 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>FileETag INode MTime Size</code></td></tr>
1363 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
1364 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
1365 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1366 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1367 </table>
1368     <p>
1369     La directive <code class="directive">FileETag</code> définit les
1370     caractéristiques de fichier utilisées lors de la génération de
1371     l'en-tête de réponse HTTP <code>ETag</code> (entity tag) quand le
1372     document est contenu dans un fichier statique(la valeur de
1373     <code>ETag</code>
1374     est utilisée dans le cadre de la gestion du cache pour préserver la
1375     bande passante réseau). La directive
1376     <code class="directive">FileETag</code> vous permet maintenant de choisir
1377     quelles caractéristiques du fichier vont être utilisées, le cas
1378     échéant. Les mots-clés reconnus sont :
1379     </p>
1380
1381     <dl>
1382      <dt><strong>INode</strong></dt>
1383      <dd>Le numéro d'i-node du fichier sera inclus dans le processus de
1384      génération</dd>
1385      <dt><strong>MTime</strong></dt>
1386      <dd>La date et l'heure auxquelles le fichier a été modifié la
1387      dernière fois seront incluses</dd>
1388      <dt><strong>Size</strong></dt>
1389      <dd>La taille du fichier en octets sera incluse</dd>
1390      <dt><strong>All</strong></dt>
1391      <dd>Tous les champs disponibles seront utilisés. Cette définition
1392      est équivalente à : <div class="example"><p><code>FileETag INode MTime
1393      Size</code></p></div></dd>
1394      <dt><strong>None</strong></dt>
1395      <dd>Si le document se compose d'un fichier, aucun champ
1396      <code>ETag</code> ne sera inclus dans la réponse</dd>
1397     </dl>
1398
1399     <p>Les mots-clés <code>INode</code>, <code>MTime</code>, et
1400     <code>Size</code> peuvent être préfixés par <code>+</code> ou
1401     <code>-</code>, ce qui permet de modifier les valeurs par défaut
1402     héritées d'un niveau de configuration plus général. Tout mot-clé
1403     apparaissant sans aucun préfixe annule entièrement et immédiatement
1404     les configurations héritées.</p>
1405
1406     <p>Si la configuration d'un répertoire contient
1407     <code>FileETag&nbsp;INode&nbsp;MTime&nbsp;Size</code>, et si un de
1408     ses sous-répertoires contient <code>FileETag&nbsp;-INode</code>, la
1409     configuration de ce sous-répertoire (qui sera propagée vers tout
1410     sou-répertoire qui ne la supplante pas), sera équivalente à
1411     <code>FileETag&nbsp;MTime&nbsp;Size</code>.</p>
1412     <div class="warning"><h3>Avertissement</h3>
1413     Ne modifiez pas les valeurs par défaut pour les répertoires ou
1414     localisations où WebDAV est activé et qui utilisent
1415     <code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code> comme fournisseur de stockage.
1416     <code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code> utilise
1417     <code>INode&nbsp;MTime&nbsp;Size</code> comme format fixe pour les
1418     comparaisons de champs <code>ETag</code> dans les requêtes
1419     conditionnelles. Ces requêtes conditionnelles échoueront si le
1420     format <code>ETag</code> est modifié via la directive
1421     <code class="directive">FileETag</code>.
1422     </div>
1423     <div class="note"><h3>Inclusions côté serveur</h3>
1424     Aucun champ ETag n'est généré pour les réponses interprétées par
1425     <code class="module"><a href="../mod/mod_include.html">mod_include</a></code>, car l'entité de la réponse peut
1426     changer sans modification de l'INode, du MTime, ou de la taille du
1427     fichier statique contenant les directives SSI.
1428     </div>
1429
1430
1431
1432 </div>
1433 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1434 <div class="directive-section"><h2><a name="Files" id="Files">&lt;Files&gt;</a> <a name="files" id="files">Directive</a></h2>
1435 <table class="directive">
1436 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contient des directives qui s'appliquent aux fichiers
1437 précisés</td></tr>
1438 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;Files <var>nom fichier</var>&gt; ... &lt;/Files&gt;</code></td></tr>
1439 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
1440 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
1441 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1442 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1443 </table>
1444     <p>La directive <code class="directive">&lt;Files&gt;</code> limite
1445     la portée des directives qu'elle contient aux fichiers précisés.
1446     Elle est comparable aux directives <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> et <code class="directive"><a href="#location">&lt;Location&gt;</a></code>. Elle doit se terminer par une
1447     balise <code>&lt;/Files&gt;</code>. Les directives contenues dans
1448     cette section s'appliqueront à tout objet dont le nom de base (la
1449     dernière partie du nom de fichier) correspond au fichier spécifié.
1450     Les sections <code class="directive">&lt;Files&gt;</code> sont
1451     traitées selon l'ordre dans lequel elles apparaissent dans le
1452     fichier de configuration, après les sections <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> et la lecture des fichiers
1453     <code>.htaccess</code>, mais avant les sections <code class="directive"><a href="#location">&lt;Location&gt;</a></code>. Notez que les
1454     sections <code class="directive">&lt;Files&gt;</code> peuvent être
1455     imbriquées dans les sections <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> afin de restreindre la portion
1456     du système de fichiers à laquelle ces dernières vont
1457     s'appliquer.</p>
1458
1459     <p>L'argument <var>filename</var> peut contenir un nom de fichier
1460     ou une chaîne de caractères avec caractères génériques, où
1461     <code>?</code> remplace un caractère, et <code>*</code> toute chaîne
1462     de caractères. On peut aussi utiliser les <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">Expressions rationnelles</a> en ajoutant la
1463     caractère <code>~</code>. Par exemple :</p>
1464
1465     <div class="example"><p><code>
1466       &lt;Files ~ "\.(gif|jpe?g|png)$"&gt;
1467     </code></p></div>
1468
1469     <p>correspondrait à la plupart des formats graphiques de l'Internet.
1470     Il est cependant préférable d'utiliser la directive <code class="directive"><a href="#filesmatch">&lt;FilesMatch&gt;</a></code>.</p>
1471
1472     <p>Notez qu'à la différence des sections <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> et <code class="directive"><a href="#location">&lt;Location&gt;</a></code>, les sections <code class="directive">&lt;Files&gt;</code> peuvent être utilisées dans les
1473     fichiers <code>.htaccess</code>. Ceci permet aux utilisateurs de
1474     contrôler l'accès à leurs propres ressources, fichier par
1475     fichier.</p>
1476
1477
1478 <h3>Voir aussi</h3>
1479 <ul>
1480 <li><a href="../sections.html">Comment fonctionnent les sections
1481 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour une
1482 explication de la manière dont ces différentes sections se combinent
1483 entre elles à la réception d'une requête</li>
1484 </ul>
1485 </div>
1486 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1487 <div class="directive-section"><h2><a name="FilesMatch" id="FilesMatch">&lt;FilesMatch&gt;</a> <a name="filesmatch" id="filesmatch">Directive</a></h2>
1488 <table class="directive">
1489 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contient des directives qui s'appliquent à des fichiers
1490 spécifiés sous la forme d'expressions rationnelles</td></tr>
1491 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;FilesMatch <var>expression rationnelle</var>&gt; ...
1492 &lt;/FilesMatch&gt;</code></td></tr>
1493 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
1494 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
1495 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1496 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1497 </table>
1498     <p>La section <code class="directive">&lt;FilesMatch&gt;</code>
1499     limite la portée des directives qu'elle contient aux fichiers
1500     spécifiés, tout comme le ferait une section <code class="directive"><a href="#files">&lt;Files&gt;</a></code>. Mais elle accepte aussi les
1501     <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expressions rationnelles</a>. Par
1502     exemple :</p>
1503
1504     <div class="example"><p><code>
1505       &lt;FilesMatch "\.(gif|jpe?g|png)$"&gt;
1506     </code></p></div>
1507
1508     <p>correspondrait à la plupart des formats graphiques de
1509     l'Internet.</p>
1510
1511 <h3>Voir aussi</h3>
1512 <ul>
1513 <li><a href="../sections.html">Comment fonctionnent les sections
1514 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour une
1515 explication de la manière dont ces différentes sections se combinent
1516 entre elles à la réception d'une requête</li>
1517 </ul>
1518 </div>
1519 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1520 <div class="directive-section"><h2><a name="ForceType" id="ForceType">ForceType</a> <a name="forcetype" id="forcetype">Directive</a></h2>
1521 <table class="directive">
1522 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Force le type de médium spécifié dans le champ d'en-tête
1523 HTTP Content-Type pour les fichiers correspondants</td></tr>
1524 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ForceType <var>type médium</var>|None</code></td></tr>
1525 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
1526 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
1527 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1528 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1529 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Intégré dans le coeur d'Apache httpd depuis la version
1530 2.0</td></tr>
1531 </table>
1532     <p>Lorsqu'elle est placée dans un fichier <code>.htaccess</code> ou
1533     une section <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>, <code class="directive"><a href="#location">&lt;Location&gt;</a></code>, ou <code class="directive"><a href="#files">&lt;Files&gt;</a></code>, cette directive force
1534     l'identification du type MIME des fichiers spécifiés à la valeur de
1535     l'argument <var>type médium</var>. Par exemple, si vous possédez un
1536     répertoire ne contenant que des fichiers GIF, et si vous ne voulez
1537     pas leur ajouter l'extension <code>.gif</code>, vous pouvez utiliser
1538     :</p>
1539
1540     <div class="example"><p><code>
1541       ForceType image/gif
1542     </code></p></div>
1543
1544     <p>Notez que cette directive l'emporte sur d'autres associations de
1545     type de médium indirectes définies dans mime.types ou via la
1546     directive <code class="directive"><a href="../mod/mod_mime.html#addtype">AddType</a></code>.</p>
1547
1548     <p>Vous pouvez aussi annuler toute définition plus générale de
1549     <code class="directive">ForceType</code> en affectant la valeur
1550     <code>None</code> à l'argument <var>type médium</var> :</p>
1551
1552     <div class="example"><p><code>
1553       # force le type MIME de tous les fichiers à image/gif:<br />
1554       &lt;Location /images&gt;<br />
1555         <span class="indent">
1556           ForceType image/gif<br />
1557         </span>
1558       &lt;/Location&gt;<br />
1559       <br />
1560       # mais utilise les méthodes classiques d'attribution du type MIME
1561       # dans le sous-répertoire suivant :<br />
1562       &lt;Location /images/mixed&gt;<br />
1563       <span class="indent">
1564         ForceType None<br />
1565       </span>
1566       &lt;/Location&gt;
1567     </code></p></div>
1568     
1569     <p>A la base, cette directive écrase le type de contenu généré pour
1570     les fichiers statiques servis à partir du sytème de fichiers. Pour
1571     les ressources autres que les fichiers statiques pour lesquels le
1572     générateur de réponse spécifie en général un type de contenu, cette
1573     directive est ignorée.</p>
1574
1575
1576 </div>
1577 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1578 <div class="directive-section"><h2><a name="HostnameLookups" id="HostnameLookups">HostnameLookups</a> <a name="hostnamelookups" id="hostnamelookups">Directive</a></h2>
1579 <table class="directive">
1580 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la recherche DNS sur les adresses IP des
1581 clients</td></tr>
1582 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>HostnameLookups On|Off|Double</code></td></tr>
1583 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>HostnameLookups Off</code></td></tr>
1584 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire</td></tr>
1585 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1586 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1587 </table>
1588     <p>Cette directive active la recherche DNS afin de pouvoir
1589     journaliser les nom d'hôtes (et les passer aux programmes CGI et aux
1590     inclusions SSI via la variable <code>REMOTE_HOST</code>). La valeur
1591     <code>Double</code> déclenche une double recherche DNS inverse. En
1592     d'autres termes, une fois la recherche inverse effectuée, on lance
1593     une recherche directe sur le résultat de cette dernière. Au moins
1594     une des adresses IP fournies par la recherche directe doit
1595     correspondre à l'adresse originale (ce que l'on nomme
1596     <code>PARANOID</code> dans la terminologie "tcpwrappers").</p>
1597
1598     <p>Quelle que soit la configuration, lorsqu'on utilise
1599     <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> pour contrôler l'accès en fonction
1600     du nom d'hôte, une double recherche DNS inverse est effectuée,
1601     sécurité oblige. Notez cependant que le résultat de cette double
1602     recherche n'est en général pas accessible, à moins que vous n'ayez
1603     spécifié <code>HostnameLookups Double</code>. Par exemple, si vous
1604     n'avez spécifié que <code>HostnameLookups On</code>, et si une
1605     requête concerne un objet protégé par des restrictions en fonction
1606     du nom d'hôte, quel que soit le résultat de la double recherche
1607     inverse, les programmes CGI ne recevront que le résultat de la
1608     recherche inverse simple dans la variable
1609     <code>REMOTE_HOST</code>.</p>
1610
1611     <p>La valeur par défaut est <code>Off</code> afin de préserver le
1612     traffic réseau des sites pour lesquels la recherche inverse n'est
1613     pas vraiment nécessaire. Cette valeur par défaut est aussi bénéfique
1614     pour les utilisateurs finaux car il n'ont ainsi pas à subir de temps
1615     d'attente supplémentaires dus aux recherches DNS. Les sites
1616     fortement chargés devraient laisser cette directive à
1617     <code>Off</code>, car les recherches DNS peuvent prendre des temps
1618     très longs. Vous pouvez éventuellement utiliser hors ligne
1619     l'utilitaire <code class="program"><a href="../programs/logresolve.html">logresolve</a></code>, compilé par défaut dans
1620     le sous-répertoire <code>bin</code> de votre répertoire
1621     d'installation, afin de déterminer les noms d'hôtes associés aux
1622     adresses IP journalisées.</p>
1623
1624 </div>
1625 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1626 <div class="directive-section"><h2><a name="If" id="If">&lt;If&gt;</a> <a name="if" id="if">Directive</a></h2>
1627 <table class="directive">
1628 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contient des directives qui ne s'appliquent que si une
1629 condition est satisfaite au cours du traitement d'une
1630 requête</td></tr>
1631 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;If <var>expression</var>&gt; ... &lt;/If&gt;</code></td></tr>
1632 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
1633 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
1634 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1635 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1636 </table>
1637     <p>La directive <code class="directive">&lt;If&gt;</code> évalue une
1638     expression à la volée, et applique les directives qu'elle contient
1639     si et seulement si l'expression renvoie la valeur "vrai". Par
1640     exemple :</p>
1641
1642     <div class="example"><p><code>
1643         &lt;If "$req{Host} = ''"&gt;
1644     </code></p></div>
1645
1646     <p>sera satisfaite dans le cas des requêtes HTTP/1.0 sans en-tête
1647     <var>Host:</var>.</p>
1648
1649     <p>Vous pouvez tester la valeur de tout en-tête de requête ($req),
1650     de tout en-tête de réponse ($resp) ou de toute variable
1651     d'environnement ($env) dans votre expression.</p>
1652
1653     <p>En plus de <code>=</code>, <code>If</code> peut utiliser
1654     l'opérateur <code>IN</code> pour déterminer si la valeur de
1655     l'expression fait partie d'une liste donnée :</p>
1656
1657     <div class="example"><p><code>
1658         &lt;If %{REQUEST_METHOD} IN GET,HEAD,OPTIONS&gt;
1659     </code></p></div>
1660
1661
1662 <h3>Voir aussi</h3>
1663 <ul>
1664 <li><a href="../sections.html">Comment fonctionnent les sections
1665 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour une
1666 explication de la manière dont ces différentes sections se combinent
1667 entre elles à la réception d'une requête. La directive <code class="directive">&lt;If&gt;</code> possède la même priorité et s'utilise de
1668 la même façon que la directive <code class="directive">&lt;Files&gt;</code></li>
1669 </ul>
1670 </div>
1671 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1672 <div class="directive-section"><h2><a name="IfDefine" id="IfDefine">&lt;IfDefine&gt;</a> <a name="ifdefine" id="ifdefine">Directive</a></h2>
1673 <table class="directive">
1674 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contient des directives qui ne s'appliqueront que si un
1675 test retourne "vrai" au démarrage du serveur</td></tr>
1676 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;IfDefine [!]<var>paramètre</var>&gt; ...
1677     &lt;/IfDefine&gt;</code></td></tr>
1678 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
1679 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
1680 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1681 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1682 </table>
1683     <p>La section <code>&lt;IfDefine
1684     <var>test</var>&gt;...&lt;/IfDefine&gt;</code> permet de
1685     conférer un caractère conditionnel à un ensemble de directives. Les
1686     directives situées à l'intérieur d'une section <code class="directive">&lt;IfDefine&gt;</code> ne s'appliquent que si
1687     <var>test</var> est vrai. Si <var>test</var> est faux, tout ce qui
1688     se trouve entre les balises de début et de fin est ignoré.</p>
1689
1690     <p><var>test</var> peut se présenter sous deux formes :</p>
1691
1692     <ul>
1693       <li><var>nom paramètre</var></li>
1694
1695       <li><code>!</code><var>nom paramètre</var></li>
1696     </ul>
1697
1698     <p>Dans le premier cas, les directives situées entre les balises de
1699     début et de fin ne s'appliqueront que si le paramètre nommé <var>nom
1700     paramètre</var> est défini. Le second format inverse le test, et
1701     dans ce cas, les directives ne s'appliqueront que si <var>nom
1702     paramètre</var> n'est <strong>pas</strong> défini.</p>
1703
1704     <p>L'argument <var>nom paramètre</var> est une définition qui peut
1705     être effectuée par la ligne de commande
1706     <code class="program"><a href="../programs/httpd.html">httpd</a></code> via le paramètre
1707     <code>-D<var>paramètre</var></code> au démarrage du serveur, ou via la
1708     directive <code class="directive"><a href="#define">Define</a></code>.</p>
1709
1710     <p>Les sections <code class="directive">&lt;IfDefine&gt;</code>
1711     peuvent être imbriquées, ce qui permet d'implémenter un test
1712     multi-paramètres simple. Exemple :</p>
1713
1714     <div class="example"><p><code>
1715       httpd -DReverseProxy -DUseCache -DMemCache ...<br />
1716       <br />
1717       # httpd.conf<br />
1718       &lt;IfDefine ReverseProxy&gt;<br />
1719       <span class="indent">
1720         LoadModule proxy_module   modules/mod_proxy.so<br />
1721         LoadModule proxy_http_module   modules/mod_proxy_http.so<br />
1722         &lt;IfDefine UseCache&gt;<br />
1723         <span class="indent">
1724           LoadModule cache_module   modules/mod_cache.so<br />
1725           &lt;IfDefine MemCache&gt;<br />
1726           <span class="indent">
1727             LoadModule mem_cache_module   modules/mod_mem_cache.so<br />
1728           </span>
1729           &lt;/IfDefine&gt;<br />
1730           &lt;IfDefine !MemCache&gt;<br />
1731           <span class="indent">
1732             LoadModule disk_cache_module   modules/mod_disk_cache.so<br />
1733           </span>
1734           &lt;/IfDefine&gt;
1735         </span>
1736         &lt;/IfDefine&gt;
1737       </span>
1738       &lt;/IfDefine&gt;
1739     </code></p></div>
1740
1741 </div>
1742 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1743 <div class="directive-section"><h2><a name="IfModule" id="IfModule">&lt;IfModule&gt;</a> <a name="ifmodule" id="ifmodule">Directive</a></h2>
1744 <table class="directive">
1745 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contient des directives qui ne s'appliquent qu'en fonction
1746 de la présence ou de l'absence d'un module spécifique</td></tr>
1747 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;IfModule [!]<var>fichier module</var>|<var>identificateur
1748 module</var>&gt; ... &lt;/IfModule&gt;</code></td></tr>
1749 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
1750 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
1751 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1752 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1753 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Les identificateurs de modules sont disponibles dans les
1754 versions 2.1 et supérieures.</td></tr>
1755 </table>
1756     <p>La section <code>&lt;IfModule
1757     <var>test</var>&gt;...&lt;/IfModule&gt;</code> permet de conférer à
1758     des directives un caractère conditionnel basé sur la présence d'un
1759     module spécifique. Les directives situées dans une section
1760     <code class="directive">&lt;IfModule&gt;</code> ne s'appliquent que
1761     si <var>test</var> est vrai. Si <var>test</var> est faux, tout ce
1762     qui se trouve entre les balises de début et de fin est ignoré.</p>
1763
1764     <p><var>test</var> peut se présenter sous deux formes :</p>
1765
1766     <ul>
1767       <li><var>module</var></li>
1768
1769       <li>!<var>module</var></li>
1770     </ul>
1771
1772     <p>Dans le premier cas, les directives situées entre les balises de
1773     début et de fin ne s'appliquent que si le module <var>module</var>
1774     est présent -- soit compilé avec le binaire Apache httpd, soit chargé
1775     dynamiquement via la directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>. Le second format inverse le test, et dans
1776     ce cas, les directives ne s'appliquent que si <var>module</var>
1777     n'est <strong>pas</strong> présent.</p>
1778
1779     <p>L'argument <var>module</var> peut contenir soit l'identificateur
1780     du module, soit le nom du fichier source du module. Par exemple,
1781     <code>rewrite_module</code> est un identificateur et
1782     <code>mod_rewrite.c</code> le nom du fichier source
1783     correspondant. Si un module comporte plusieurs fichiers sources,
1784     utilisez le nom du fichier qui contient la chaîne de caractères
1785     <code>STANDARD20_MODULE_STUFF</code>.</p>
1786
1787     <p>Les sections <code class="directive">&lt;IfModule&gt;</code>
1788     peuvent être imbriquées, ce qui permet d'implémenter des tests
1789     multi-modules simples.</p>
1790
1791     <div class="note">Cette section ne doit être utilisée que si votre fichier de
1792     configuration ne fonctionne qu'en fonction de la présence ou de
1793     l'absence d'un module spécifique. D'une manière générale, il n'est
1794     pas nécessaire de placer les directives à l'intérieur de sections
1795     <code class="directive">&lt;IfModule&gt;</code>.</div>
1796
1797 </div>
1798 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1799 <div class="directive-section"><h2><a name="Include" id="Include">Include</a> <a name="include" id="include">Directive</a></h2>
1800 <table class="directive">
1801 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Inclut d'autres fichiers de configuration dans un des
1802 fichiers de configuration du serveur</td></tr>
1803 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Include [<var>optional</var>|<var>strict</var>] <var>chemin fichier</var>|<var>chemin
1804 répertoire|<var>wildcard</var></var></code></td></tr>
1805 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire</td></tr>
1806 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1807 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1808 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Utilisation des caractères génériques dans la partie nom
1809 de fichier depuis la version 2.0.41, et dans la partie chemin depuis la
1810 version 2.3.6</td></tr>
1811 </table>
1812     <p>Cette directive permet l'inclusion d'autres fichiers de
1813     configuration dans un des fichiers de configuration du serveur.</p>
1814
1815     <p>On peut utiliser des caractères génériques de style Shell
1816     (<code>fnmatch()</code>) aussi bien dans la partie nom de fichier du
1817     chemin que dans la partie répertoires pour inclure plusieurs
1818     fichiers en une
1819     seule fois, selon leur ordre alphabétique. De plus, si la directive
1820     <code class="directive">Include</code> pointe vers un répertoire, Apache
1821     httpd inclura tous les fichiers de ce répertoire et de tous ces
1822     sous-répertoires. L'inclusion de répertoires entiers est cependant
1823     déconseillée, car il est fréquent d'oublier des fichiers
1824     temporaires dans un répertoire, ce qui causerait une erreur
1825     <code class="program"><a href="../programs/httpd.html">httpd</a></code> en cas d'inclusion. Pour inclure des
1826     fichiers qui correspondent à un certain modèle, comme *.conf par
1827     exemple, nous vous recommandons d'utiliser plutôt la syntaxe avec
1828     caractères génériques comme ci-dessous.</p>
1829
1830     <p>Lorsque la partie <strong>nom de fichier</strong> ou répertoires
1831     du chemin
1832     comporte des caractères génériques, et si aucun fichier ou
1833     répertoire ne correspond, la directive <code class="directive"><a href="#include">Include</a></code> sera <strong>ignorée
1834     silencieusement</strong>.
1835     Lorsqu'une partie <strong>répertoires</strong> du chemin comporte
1836     des caractères génériques, et si aucun
1837     répertoire ne correspond, la directive <code class="directive"><a href="#include">Include</a></code> <strong>échouera et renverra une
1838     erreur</strong>
1839     indiquant que le fichier ou le répertoire n'a pas été trouvé.
1840     </p>
1841
1842     <p>Pour contrôler plus finement le comportement du serveur
1843     lorsqu'aucun fichier ou répertoire ne correspond, préfixez le chemin
1844     avec les modificateurs <var>optional</var> ou <var>strict</var>. Si
1845     <var>optional</var> est spécifié, tout fichier ou répertoire avec
1846     caractères génériques qui ne correspond à aucun fichier ou
1847     répertoire sera ignoré silencieusement. Si <var>strict</var> est
1848     spécifié,  tout fichier ou répertoire avec
1849     caractères génériques qui ne correspond pas à au moins un fichier
1850     fera échouer le démarrage du serveur.</p>
1851
1852         <p>Lorsqu'une partie fichier ou répertoire du chemin est
1853         spécipée sans caractères génériques, et si ce fichier ou
1854         répertoire n'existe pas, la directive <code class="directive"><a href="#include">Include</a></code> échouera avec un message
1855         d'erreur indiquant que le fichier ou répertoire n'a pas pu être
1856         trouvé.</p>
1857
1858     <p>Le chemin fichier spécifié peut être soit un chemin absolu, soit
1859     un chemin relatif au répertoire défini par la directive <code class="directive"><a href="#serverroot">ServerRoot</a></code>.</p>
1860
1861     <p>Exemples :</p>
1862
1863     <div class="example"><p><code>
1864       Include /usr/local/apache2/conf/ssl.conf<br />
1865       Include /usr/local/apache2/conf/vhosts/*.conf
1866     </code></p></div>
1867
1868     <p>ou encore, avec des chemins relatifs au répertoire défini par la
1869     directive <code class="directive"><a href="#serverroot">ServerRoot</a></code> :</p>
1870
1871     <div class="example"><p><code>
1872       Include conf/ssl.conf<br />
1873       Include conf/vhosts/*.conf
1874     </code></p></div>
1875
1876     <p>On peut aussi insérer des caractères génériques dans la partie
1877     répertoires du chemin. Dans l'exemple suivant, le démarrage du
1878     serveur échouera si aucun répertoire ne correspond à conf/vhosts/*,
1879     mais réussira si aucun fichier ne correspond à *.conf :</p>
1880   
1881     <div class="example"><p><code>
1882       Include conf/vhosts/*/vhost.conf<br />
1883       Include conf/vhosts/*/*.conf
1884     </code></p></div>
1885
1886     <p>Dans cet exemple, le démarrage du serveur échouera si
1887     conf/vhosts/* ne correspond à aucun répertoire, ou si *.conf ne
1888     correspond à aucun fichier :</p>
1889
1890     <div class="example"><p><code>
1891       Include strict conf/vhosts/*/*.conf
1892     </code></p></div>
1893   
1894     <p>Dans cet exemple, le démarrage du serveur réussira si
1895     conf/vhosts/* ne correspond à aucun répertoire, ou si *.conf ne
1896     correspond à aucun fichier.</p>
1897
1898     <div class="example"><p><code>
1899       Include optional conf/vhosts/*/*.conf
1900     </code></p></div>
1901     
1902
1903 <h3>Voir aussi</h3>
1904 <ul>
1905 <li><code class="program"><a href="../programs/apachectl.html">apachectl</a></code></li>
1906 </ul>
1907 </div>
1908 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1909 <div class="directive-section"><h2><a name="KeepAlive" id="KeepAlive">KeepAlive</a> <a name="keepalive" id="keepalive">Directive</a></h2>
1910 <table class="directive">
1911 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active les connexions HTTP persistantes</td></tr>
1912 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>KeepAlive On|Off</code></td></tr>
1913 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>KeepAlive On</code></td></tr>
1914 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
1915 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1916 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1917 </table>
1918     <p>L'extension Keep-Alive de HTTP/1.0 et l'implémentation des
1919     connexions persistantes dans HTTP/1.1 ont rendu possibles des
1920     sessions HTTP de longue durée, ce qui permet de transmettre
1921     plusieurs requêtes via la même connexion TCP. Dans certains cas, le
1922     gain en rapidité pour des documents comportant de nombreuses images
1923     peut atteindre 50%. Pour activer les connexions persistantes,
1924     définissez <code>KeepAlive On</code>.</p>
1925
1926     <p>Pour les clients HTTP/1.0, les connexions persistantes ne seront
1927     mises en oeuvre que si elles ont été spécialement demandées par un
1928     client. De plus, une connexion persistante avec un client HTTP/1.0
1929     ne peut être utilisée que si la taille du contenu est connue
1930     d'avance. Ceci implique que les contenus dynamiques comme les
1931     sorties CGI, les pages SSI, et les listings de répertoires générés
1932     par le serveur n'utiliseront en général pas les connexions
1933     persistantes avec les clients HTTP/1.0. Avec les clients HTTP/1.1,
1934     les connexions persistantes sont utilisées par défaut, sauf
1935     instructions contraires. Si le client le demande, le transfert par
1936     tronçons de taille fixe (chunked encoding) sera utilisé afin de
1937     transmettre un contenu de longueur inconnue via une connexion
1938     persistante.</p>
1939
1940     <p>Lorsqu'un client utilise une connexion persistante, elle comptera
1941     pour une seule requête pour la directive <code class="directive"><a href="../mod/mpm_common.html#maxconnectionsperchild">MaxConnectionsPerChild</a></code>, quel
1942     que soit le nombre de requêtes transmises via cette connexion.</p>
1943
1944 <h3>Voir aussi</h3>
1945 <ul>
1946 <li><code class="directive"><a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></code></li>
1947 </ul>
1948 </div>
1949 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1950 <div class="directive-section"><h2><a name="KeepAliveTimeout" id="KeepAliveTimeout">KeepAliveTimeout</a> <a name="keepalivetimeout" id="keepalivetimeout">Directive</a></h2>
1951 <table class="directive">
1952 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Durée pendant laquelle le serveur va attendre une requête
1953 avant de fermer une connexion persistante</td></tr>
1954 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>KeepAliveTimeout <var>nombre</var>[ms]</code></td></tr>
1955 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>KeepAliveTimeout 5</code></td></tr>
1956 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
1957 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1958 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1959 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>La spécification d'une valeur en millisecondes est
1960 possible depuis les versions 2.3.2 et supérieures d'Apache httpd</td></tr>
1961 </table>
1962     <p>Le nombre de secondes pendant lesquelles Apache httpd va attendre une
1963     requête avant de fermer la connexion. Le délai peut être défini en
1964     millisecondes en suffixant sa valeur par ms. La valeur du délai
1965     spécifiée par la directive <code class="directive"><a href="#timeout">Timeout</a></code> s'applique dès qu'une requête a
1966     été reçue.</p>
1967
1968     <p>Donner une valeur trop élévée à
1969     <code class="directive">KeepAliveTimeout</code> peut induire des problèmes
1970     de performances sur les serveurs fortement chargés. Plus le délai
1971     est élévé, plus nombreux seront les processus serveur en attente de
1972     requêtes de la part de clients inactifs.</p>
1973
1974     <p>Dans un contexte de serveur virtuel à base de nom, c'est le délai
1975     du premier serveur virtuel défini (le serveur par défaut) parmi un
1976     ensemble de directives <code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code> qui sera utilisé. Les
1977     autres valeurs seront ignorées.</p>
1978
1979 </div>
1980 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
1981 <div class="directive-section"><h2><a name="Limit" id="Limit">&lt;Limit&gt;</a> <a name="limit" id="limit">Directive</a></h2>
1982 <table class="directive">
1983 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Limite les contrôles d'accès que la section contient à
1984 certaines méthodes HTTP</td></tr>
1985 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;Limit <var>méthode</var> [<var>méthode</var>] ... &gt; ...
1986     &lt;/Limit&gt;</code></td></tr>
1987 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
1988 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>AuthConfig, Limit</td></tr>
1989 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
1990 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
1991 </table>
1992     <p>Les contrôles d'accès s'appliquent normalement à
1993     <strong>toutes</strong> les méthodes d'accès, et c'est en général le
1994     comportement souhaité. <strong>Dans le cas général, les directives
1995     de contrôle d'accès n'ont pas à être placées dans une section
1996     <code class="directive">&lt;Limit&gt;</code>.</strong></p>
1997
1998     <p>La directive <code class="directive">&lt;Limit&gt;</code> a pour
1999     but de limiter les effets des contrôles d'accès aux méthodes HTTP
2000     spécifiées. Pour toutes les autres méthodes, les restrictions
2001     d'accès contenues dans la section <code class="directive">&lt;Limit&gt;</code> <strong>n'auront aucun
2002     effet</strong>. L'exemple suivant n'applique les contrôles d'accès
2003     qu'aux méthodes <code>POST</code>, <code>PUT</code>, et
2004     <code>DELETE</code>, en laissant les autres méthodes sans protection
2005     :</p>
2006
2007     <div class="example"><p><code>
2008       &lt;Limit POST PUT DELETE&gt;<br />
2009       <span class="indent">
2010         Require valid-user<br />
2011       </span>
2012       &lt;/Limit&gt;
2013     </code></p></div>
2014
2015     <p>La liste des noms de méthodes peut contenir une ou plusieurs
2016     valeurs parmi les suivantes : <code>GET</code>, <code>POST</code>,
2017     <code>PUT</code>, <code>DELETE</code>, <code>CONNECT</code>,
2018     <code>OPTIONS</code>, <code>PATCH</code>, <code>PROPFIND</code>,
2019     <code>PROPPATCH</code>, <code>MKCOL</code>, <code>COPY</code>,
2020     <code>MOVE</code>, <code>LOCK</code>, et <code>UNLOCK</code>.
2021     <strong>Le nom de méthode est sensible à la casse.</strong> Si la
2022     valeur <code>GET</code> est présente, les requêtes <code>HEAD</code>
2023     seront aussi concernées. La méthode <code>TRACE</code> ne peut pas
2024     être limitée (voir la directive <code class="directive"><a href="#traceenable">TraceEnable</a></code>).</p>
2025
2026     <div class="warning">Une section <code class="directive">&lt;LimitExcept&gt;</code> doit toujours être préférée à
2027     une section <code class="directive">&lt;Limit&gt;</code> pour la
2028     restriction d'accès, car une section <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code> fournit une protection contre
2029     les méthodes arbitraires.</div>
2030
2031     <p>Les directives <code class="directive">&lt;Limit&gt;</code> et
2032     <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code>
2033     peuvent être imbriquées. Dans ce cas, pour chaque niveau des
2034     directives <code class="directive">&lt;Limit&gt;</code> ou  <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code>, ces dernières
2035     doivent restreindre l'accès pour les méthodes auxquelles les
2036     contrôles d'accès s'appliquent.</p>
2037
2038     <div class="warning">Lorsqu'on utilise les directives <code class="directive">&lt;Limit&gt;</code> ou <code class="directive">&lt;LimitExcept&gt;</code> avec la directive <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code>, la première directive
2039     <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> dont la
2040     condition est satisfaite autorise la requête, sans tenir compte de
2041     la présence d'autres directives <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code>.</div>
2042
2043     <p>Par exemple, avec la configuration suivante, tous les
2044     utilisateurs seront autorisés à effectuer des requêtes
2045     <code>POST</code>, et la directive <code>Require group
2046     editors</code> sera ignorée dans tous les cas :</p>
2047
2048     <div class="example"><p><code>
2049       &lt;LimitExcept GET&gt;
2050       <span class="indent">
2051         Require valid-user
2052       </span>
2053       &lt;/LimitExcept&gt;<br />
2054       &lt;Limit POST&gt;
2055       <span class="indent">
2056         Require group editors
2057       </span>
2058       &lt;/Limit&gt;
2059     </code></p></div>
2060
2061 </div>
2062 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2063 <div class="directive-section"><h2><a name="LimitExcept" id="LimitExcept">&lt;LimitExcept&gt;</a> <a name="limitexcept" id="limitexcept">Directive</a></h2>
2064 <table class="directive">
2065 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Applique les contrôles d'accès à toutes les méthodes HTTP,
2066 sauf celles qui sont spécifiées</td></tr>
2067 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;LimitExcept <var>méthode</var> [<var>méthode</var>] ... &gt; ...
2068     &lt;/LimitExcept&gt;</code></td></tr>
2069 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire, .htaccess</td></tr>
2070 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>AuthConfig, Limit</td></tr>
2071 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2072 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2073 </table>
2074     <p><code class="directive">&lt;LimitExcept&gt;</code> et
2075     <code>&lt;/LimitExcept&gt;</code> permettent de regrouper des
2076     directives de contrôle d'accès qui s'appliqueront à toutes les
2077     méthodes d'accès HTTP qui ne font <strong>pas</strong> partie de la
2078     liste des arguments ; en d'autres termes, elles ont un comportement
2079     opposé à celui de la section <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code>, et on peut les utiliser pour
2080     contrôler aussi bien les méthodes standards que les méthodes non
2081     standards ou non reconnues. Voir la documentation de la section
2082     <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> pour plus
2083     de détails.</p>
2084
2085     <p>Par exemple :</p>
2086
2087     <div class="example"><p><code>
2088       &lt;LimitExcept POST GET&gt;<br />
2089       <span class="indent">
2090         Require valid-user<br />
2091       </span>
2092       &lt;/LimitExcept&gt;
2093     </code></p></div>
2094
2095
2096 </div>
2097 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2098 <div class="directive-section"><h2><a name="LimitInternalRecursion" id="LimitInternalRecursion">LimitInternalRecursion</a> <a name="limitinternalrecursion" id="limitinternalrecursion">Directive</a></h2>
2099 <table class="directive">
2100 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine le nombre maximal de redirections internes et de
2101 sous-requêtes imbriquées</td></tr>
2102 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LimitInternalRecursion <var>nombre</var> [<var>nombre</var>]</code></td></tr>
2103 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LimitInternalRecursion 10</code></td></tr>
2104 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
2105 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2106 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2107 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir de la version 2.0.47 d'Apache httpd</td></tr>
2108 </table>
2109     <p>Une redirection interne survient, par exemple, quand on utilise
2110     la directive <code class="directive"><a href="../mod/mod_actions.html#action">Action</a></code> qui
2111     redirige en interne la requête d'origine vers un script CGI. Une
2112     sous-requête est le mécanisme qu'utilise Apache httpd pour déterminer ce
2113     qui se passerait pour un URI s'il faisait l'objet d'une requête. Par
2114     exemple, <code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code> utilise les sous-requêtes pour
2115     rechercher les fichiers listés dans la directive <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>.</p>
2116
2117     <p>La directive <code class="directive">LimitInternalRecursion</code> permet
2118     d'éviter un crash du serveur dû à un bouclage infini de redirections
2119     internes ou de sous-requêtes. De tels bouclages sont dus en général
2120     à des erreurs de configuration.</p>
2121
2122     <p>La directive accepte, comme arguments, deux limites qui sont
2123     évaluées à chaque requête. Le premier <var>nombre</var> est le
2124     nombre maximum de redirections internes qui peuvent se succéder. Le
2125     second <var>nombre</var> détermine la profondeur d'imbrication
2126     maximum des sous-requêtes. Si vous ne spécifiez qu'un seul
2127     <var>nombre</var>, il sera affecté aux deux limites.</p>
2128
2129     <div class="example"><h3>Exemple</h3><p><code>
2130       LimitInternalRecursion 5
2131     </code></p></div>
2132
2133 </div>
2134 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2135 <div class="directive-section"><h2><a name="LimitRequestBody" id="LimitRequestBody">LimitRequestBody</a> <a name="limitrequestbody" id="limitrequestbody">Directive</a></h2>
2136 <table class="directive">
2137 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>limite la taille maximale du corps de la requête HTTP
2138 envoyée par le client</td></tr>
2139 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LimitRequestBody <var>octets</var></code></td></tr>
2140 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LimitRequestBody 0</code></td></tr>
2141 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
2142 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
2143 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2144 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2145 </table>
2146     <p>Cette directive spécifie la taille maximale autorisée pour le
2147     corps d'une requête ; la valeur de l'argument <var>octets</var> va
2148     de 0 (pour une taille illimitée), à 2147483647 (2Go).</p>
2149
2150     <p>La directive <code class="directive">LimitRequestBody</code> permet de
2151     définir une limite pour la taille maximale autorisée du corps d'une
2152     requête HTTP en tenant compte du contexte dans lequel la directive
2153     a été placée (c'est à dire au niveau du serveur, d'un répertoire,
2154     d'un fichier ou d'une localisation). Si la requête du client dépasse
2155     cette limite, le serveur répondra par un message d'erreur et ne
2156     traitera pas la requête. La taille du corps d'une requête normale va
2157     varier de manière importante en fonction de la nature de la
2158     ressource et des méthodes autorisées pour cette dernière. Les
2159     scripts CGI utilisent souvent le corps du message pour extraire les
2160     informations d'un formulaire. Les implémentations de la méthode
2161     <code>PUT</code> nécessitent une valeur au moins aussi élevée que la
2162     taille maximale des représentations que le serveur désire accepter
2163     pour cette ressource.</p>
2164
2165     <p>L'administrateur du serveur peut utiliser cette directive pour
2166     contrôler plus efficacement les comportements anormaux des requêtes
2167     des clients, ce qui lui permettra de prévenir certaines formes
2168     d'attaques par déni de service.</p>
2169
2170     <p>Si par exemple, vous autorisez le chargement de fichiers vers une
2171     localisation particulière, et souhaitez limiter la taille des
2172     fichiers chargés à 100Ko, vous pouvez utiliser la directive suivante
2173     :</p>
2174
2175     <div class="example"><p><code>
2176       LimitRequestBody 102400
2177     </code></p></div>
2178
2179
2180 </div>
2181 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2182 <div class="directive-section"><h2><a name="LimitRequestFields" id="LimitRequestFields">LimitRequestFields</a> <a name="limitrequestfields" id="limitrequestfields">Directive</a></h2>
2183 <table class="directive">
2184 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Limite le nombre de champs d'en-tête autorisés dans une
2185 requête HTTP</td></tr>
2186 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LimitRequestFields <var>nombre</var></code></td></tr>
2187 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LimitRequestFields 100</code></td></tr>
2188 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
2189 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2190 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2191 </table>
2192     <p><var>nombre</var> est un entier de 0 (nombre de champs illimité)
2193     à 32767. La valeur par défaut est définie à la compilation par la
2194     constante <code>DEFAULT_LIMIT_REQUEST_FIELDS</code> (100 selon la
2195     distribution).</p>
2196
2197     <p>La directive <code class="directive">LimitRequestFields</code> permet à
2198     l'administrateur du serveur de modifier le nombre maximum de champs
2199     d'en-tête autorisés dans une requête HTTP. Pour un serveur, cette
2200     valeur doit être supérieure au nombre de champs qu'une requête
2201     client normale peut contenir. Le nombre de champs d'en-tête d'une
2202     requête qu'un client utilise dépasse rarement 20, mais ce nombre
2203     peut varier selon les implémentations des clients, et souvent en
2204     fonction des extensions que les utilisateurs configurent dans leurs
2205     navigateurs pour supporter la négociation de contenu détaillée. Les
2206     extensions HTTP optionnelles utilisent souvent les
2207     champs d'en-tête des requêtes.</p>
2208
2209     <p>L'administrateur du serveur peut utiliser cette directive pour
2210     contrôler plus efficacement les comportements anormaux des requêtes
2211     des clients, ce qui lui permettra de prévenir certaines formes
2212     d'attaques par déni de service. La valeur spécifiée doit être
2213     augmentée si les clients standards reçoivent une erreur du serveur
2214     indiquant que la requête comportait un nombre d'en-têtes trop
2215     important.</p>
2216
2217     <p>Par exemple :</p>
2218
2219     <div class="example"><p><code>
2220       LimitRequestFields 50
2221     </code></p></div>
2222
2223
2224 </div>
2225 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2226 <div class="directive-section"><h2><a name="LimitRequestFieldSize" id="LimitRequestFieldSize">LimitRequestFieldSize</a> <a name="limitrequestfieldsize" id="limitrequestfieldsize">Directive</a></h2>
2227 <table class="directive">
2228 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dédinit la taille maximale autorisée d'un en-tête de
2229 requête HTTP</td></tr>
2230 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LimitRequestFieldSize <var>octets</var></code></td></tr>
2231 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LimitRequestFieldSize 8190</code></td></tr>
2232 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
2233 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2234 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2235 </table>
2236     <p>Cette directive permet de définir le nombre maximum
2237     d'<var>octets</var> autorisés dans un en-tête de requête HTTP.</p>
2238
2239     <p>La directive <code class="directive">LimitRequestFieldSize</code> permet
2240     à l'administrateur du serveur de réduire ou augmenter la taille
2241     maximale autorisée d'un en-tête de requête HTTP. Pour un serveur,
2242     cette valeur doit être suffisamment grande pour contenir tout
2243     en-tête d'une requête client normale. La taille d'un champ d'en-tête
2244     de requête normal va varier selon les implémentations des clients,
2245     et en fonction des extensions que les utilisateurs
2246     configurent dans leurs navigateurs pour supporter la négociation de
2247     contenu détaillée. Les en-têtes d'authentification SPNEGO peuvent
2248     atteindre une taille de 12392 octets.</p>
2249
2250     <p>&gt;L'administrateur du serveur peut utiliser cette directive pour
2251     contrôler plus efficacement les comportements anormaux des requêtes
2252     des clients, ce qui lui permettra de prévenir certaines formes
2253     d'attaques par déni de service.</p>
2254
2255     <p>Par exemple ::</p>
2256
2257     <div class="example"><p><code>
2258       LimitRequestFieldSize 4094
2259     </code></p></div>
2260
2261     <div class="note">Dans des conditions normales, la valeur par défaut de cette
2262     directive ne doit pas être modifiée.</div>
2263
2264
2265 </div>
2266 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2267 <div class="directive-section"><h2><a name="LimitRequestLine" id="LimitRequestLine">LimitRequestLine</a> <a name="limitrequestline" id="limitrequestline">Directive</a></h2>
2268 <table class="directive">
2269 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit la taille maximale d'une ligne de requête
2270 HTTP</td></tr>
2271 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LimitRequestLine <var>octets</var></code></td></tr>
2272 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LimitRequestLine 8190</code></td></tr>
2273 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
2274 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2275 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2276 </table>
2277     <p>Cette directive permet de définir la taille maximale autorisée
2278     pour une ligne de requête HTTP en <var>octets</var>.</p>
2279
2280     <p>La directive <code class="directive">LimitRequestLine</code> permet à
2281     l'administrateur du serveur de réduire ou augmenter la taille
2282     maximale autorisée d'une ligne de requête HTTP client. Comme une
2283     requête comporte une méthode HTTP, un URI, et une version de
2284     protocole, la directive <code class="directive">LimitRequestLine</code>
2285     impose une restriction sur la longueur maximale autorisée pour un
2286     URI dans une requête au niveau du serveur. Pour un serveur, cette
2287     valeur doit être suffisamment grande pour référencer les noms de
2288     toutes ses ressources, y compris toutes informations pouvant être
2289     ajoutées dans la partie requête d'une méthode <code>GET</code>.</p>
2290
2291     <p>L'administrateur du serveur peut utiliser cette directive pour
2292     contrôler plus efficacement les comportements anormaux des requêtes
2293     des clients, ce qui lui permettra de prévenir certaines formes
2294     d'attaques par déni de service.</p>
2295
2296     <p>Par exemple :</p>
2297
2298     <div class="example"><p><code>
2299       LimitRequestLine 4094
2300     </code></p></div>
2301
2302     <div class="note">Dans des conditions normales, la valeur par défaut de cette
2303     directive ne doit pas être modifiée.</div>
2304
2305 </div>
2306 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2307 <div class="directive-section"><h2><a name="LimitXMLRequestBody" id="LimitXMLRequestBody">LimitXMLRequestBody</a> <a name="limitxmlrequestbody" id="limitxmlrequestbody">Directive</a></h2>
2308 <table class="directive">
2309 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit la taille maximale du corps d'une requête au format
2310 XML</td></tr>
2311 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LimitXMLRequestBody <var>octets</var></code></td></tr>
2312 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LimitXMLRequestBody 1000000</code></td></tr>
2313 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
2314 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
2315 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2316 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2317 </table>
2318     <p>Taille maximale (en octets) du corps d'une requête au format XML.
2319     Une valeur de <code>0</code> signifie qu'aucune limite n'est
2320     imposée.</p>
2321
2322     <p>Exemple :</p>
2323
2324     <div class="example"><p><code>
2325       LimitXMLRequestBody 0
2326     </code></p></div>
2327
2328
2329 </div>
2330 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2331 <div class="directive-section"><h2><a name="Location" id="Location">&lt;Location&gt;</a> <a name="location" id="location">Directive</a></h2>
2332 <table class="directive">
2333 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>N'applique les directives contenues qu'aux URLs
2334 spécifiées</td></tr>
2335 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;Location
2336     <var>chemin URL</var>|<var>URL</var>&gt; ... &lt;/Location&gt;</code></td></tr>
2337 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
2338 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2339 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2340 </table>
2341     <p>La directive <code class="directive">&lt;Location&gt;</code>
2342     limite la portée des directives contenues aux URLs définies par
2343     l'argument URL. Elle est similaire à la directive <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>, et marque le
2344     début d'une section qui se termine par une directive
2345     <code>&lt;/Location&gt;</code>. Les sections <code class="directive">&lt;Location&gt;</code> sont traitées selon l'ordre dans
2346     lequel elles apparaissent dans le fichier de configuration, mais
2347     après les sections <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> et la lecture des
2348     fichiers <code>.htaccess</code>, et après les sections <code class="directive"><a href="#files">&lt;Files&gt;</a></code>.</p>
2349
2350     <p>Les sections <code class="directive">&lt;Location&gt;</code>
2351     agissent complètement en dehors du système de fichiers. Ceci a de
2352     nombreuses conséquences. Parmi les plus importantes, on ne doit pas
2353     utiliser les sections <code class="directive">&lt;Location&gt;</code>
2354     pour contrôler l'accès aux répertoires du système de fichiers. Comme
2355     plusieurs URLs peuvent correspondre au même répertoire du système de
2356     fichiers, un tel contrôle d'accès pourrait être contourné.</p>
2357
2358     <div class="note"><h3>Quand utiliser la section <code class="directive">&lt;Location&gt;</code></h3>
2359
2360     <p>Vous pouvez utiliser une section <code class="directive">&lt;Location&gt;</code> pour appliquer des directives à
2361     des contenus situés en dehors du système de fichiers. Pour les
2362     contenus situés à l'intérieur du système de fichiers, utilisez
2363     plutôt les sections <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> et <code class="directive"><a href="#files">&lt;Files&gt;</a></code>. <code>&lt;Location
2364     /&gt;</code> constitue une exception et permet d'appliquer aisément
2365     une configuration à l'ensemble du serveur.</p>
2366     </div>
2367
2368     <p>Pour toutes les requêtes originales (non mandatées), l'argument
2369     URL est un chemin d'URL de la forme
2370     <code>/chemin/</code>. <em>Aucun protocole, nom d'hôte, port, ou chaîne
2371     de requête ne doivent apparaître.</em> Pour les requêtes mandatées, l'URL
2372     spécifiée doit être de la forme
2373     <code>protocole://nom_serveur/chemin</code>, et vous devez inclure
2374     le préfixe.</p>
2375
2376     <p>L'URL peut contenir des caractères génériques. Dans une chaîne
2377     avec caractères génériques, <code>?</code> correspond à un caractère
2378     quelconque, et <code>*</code> à toute chaîne de caractères. Les
2379     caractères génériques ne peuvent pas remplacer un / dans le chemin
2380     URL.</p>
2381
2382     <p>On peut aussi utiliser les <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">Expressions
2383     rationnelles</a>, moyennant l'addition d'un caractère
2384     <code>~</code>. Par exemple :</p>
2385
2386     <div class="example"><p><code>
2387       &lt;Location ~ "/(extra|special)/data"&gt;
2388     </code></p></div>
2389
2390     <p>concernerait les URLs contenant les sous-chaîne
2391     <code>/extra/data</code> ou <code>/special/data</code>. La directive
2392     <code class="directive"><a href="#locationmatch">&lt;LocationMatch&gt;</a></code>
2393     présente un comportement identique à la version avec expressions
2394     rationnelles de la directive <code class="directive">&lt;Location&gt;</code>, et son utilisation est
2395     préférable à l'utilisation de cette dernière pour la simple raison
2396     qu'il est difficile de distinguer <code>~</code> de <code>-</code>
2397     dans la plupart des fontes.</p>
2398
2399     <p>La directive <code class="directive">&lt;Location&gt;</code>
2400     s'utilise principalement avec la directive <code class="directive"><a href="#sethandler">SetHandler</a></code>. Par exemple, pour activer les
2401     requêtes d'état, mais ne les autoriser que depuis des navigateurs
2402     appartenant au domaine <code>example.com</code>, vous pouvez
2403     utiliser :</p>
2404
2405     <div class="example"><p><code>
2406       &lt;Location /status&gt;<br />
2407       <span class="indent">
2408         SetHandler server-status<br />
2409         Order Deny,Allow<br />
2410         Deny from all<br />
2411         Allow from .example.com<br />
2412       </span>
2413       &lt;/Location&gt;
2414     </code></p></div>
2415
2416     <div class="note"><h3>Note à propos du slash (/)</h3>
2417       <p>La signification du caractère slash dépend de l'endroit où il
2418       se trouve dans l'URL. Les utilisateurs peuvent être habitués à
2419       son comportement dans le système de fichiers où plusieurs slashes
2420       successifs sont souvent réduits à un slash unique (en d'autres
2421       termes, <code>/home///foo</code> est identique à
2422       <code>/home/foo</code>). Dans l'espace de nommage des URLs, ce
2423       n'est cependant pas toujours le cas. Pour la directive <code class="directive"><a href="#locationmatch">&lt;LocationMatch&gt;</a></code> et la
2424       version avec expressions rationnelles de la directive <code class="directive">&lt;Location&gt;</code>, vous devez spécifier
2425       explicitement les slashes multiples si telle est votre
2426       intention.</p>
2427
2428       <p>Par exemple, <code>&lt;LocationMatch ^/abc&gt;</code> va
2429       correspondre à l'URL <code>/abc</code> mais pas à l'URL <code>
2430       //abc</code>. La directive <code class="directive">&lt;Location&gt;</code> sans expression rationnelle se comporte de
2431       la même manière lorsqu'elle est utilisée pour des requêtes
2432       mandatées. Par contre, lorsque la directive <code class="directive">&lt;Location&gt;</code> sans expression rationnelle
2433       est utilisée pour des requêtes non mandatées, elle fera
2434       correspondre implicitement les slashes multiples à des slashes
2435       uniques. Par exemple, si vous spécifiez <code>&lt;Location
2436       /abc/def&gt;</code>, une requête de la forme
2437       <code>/abc//def</code> correspondra.</p>
2438     </div>
2439
2440 <h3>Voir aussi</h3>
2441 <ul>
2442 <li><a href="../sections.html">Comment fonctionnent les sections
2443 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour une
2444 explication de la manière dont ces différentes sections se combinent
2445 entre elles à la réception d'une requête.</li>
2446 </ul>
2447 </div>
2448 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2449 <div class="directive-section"><h2><a name="LocationMatch" id="LocationMatch">&lt;LocationMatch&gt;</a> <a name="locationmatch" id="locationmatch">Directive</a></h2>
2450 <table class="directive">
2451 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>N'applique les directives contenues qu'aux URLs
2452 correspondant à une expression rationnelle</td></tr>
2453 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;LocationMatch
2454     <var>regex</var>&gt; ... &lt;/LocationMatch&gt;</code></td></tr>
2455 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
2456 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2457 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2458 </table>
2459     <p>La directive <code class="directive">&lt;LocationMatch&gt;</code>
2460     limite la portée des directives contenues à l'URL spécifiée, de
2461     manière identique à la directive <code class="directive"><a href="#location">&lt;Location&gt;</a></code>. Mais son argument permettant de
2462     spécifier les URLs concernées est une <a class="glossarylink" href="../glossary.html#regex" title="voir glossaire">expression rationnelle</a> au lieu d'une simple
2463     chaîne de caractères. Par exemple :</p>
2464
2465     <div class="example"><p><code>
2466       &lt;LocationMatch "/(extra|special)/data"&gt;
2467     </code></p></div>
2468
2469     <p>correspondrait à toute URL contenant les sous-chaînes
2470     <code>/extra/data</code> ou <code>/special/data</code>.</p>
2471
2472 <h3>Voir aussi</h3>
2473 <ul>
2474 <li><a href="../sections.html">Comment fonctionnent les sections
2475 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour une
2476 explication de la manière dont ces différentes sections se combinent
2477 entre elles à la réception d'une requête.</li>
2478 </ul>
2479 </div>
2480 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2481 <div class="directive-section"><h2><a name="LogLevel" id="LogLevel">LogLevel</a> <a name="loglevel" id="loglevel">Directive</a></h2>
2482 <table class="directive">
2483 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contrôle la verbosité du journal des erreurs</td></tr>
2484 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LogLevel [<var>module</var>:]<var>niveau</var>
2485     [<var>module</var>:<var>niveau</var>] ...
2486 </code></td></tr>
2487 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LogLevel warn</code></td></tr>
2488 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire</td></tr>
2489 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2490 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2491 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>La configuration du niveau de journalisation par module
2492 et par répertoire est disponible depuis la version 2.3.6 du serveur HTTP
2493 Apache</td></tr>
2494 </table>
2495     <p>La directive <code class="directive">LogLevel</code> permet d'ajuster la
2496     verbosité des messages enregistrés dans les journaux d'erreur (voir
2497     la directive <code class="directive"><a href="#errorlog">ErrorLog</a></code>
2498     directive). Les <var>niveau</var>x disponibles sont présentés
2499     ci-après, par ordre de criticité décroissante :</p>
2500
2501     <table class="bordered">
2502     
2503       <tr>
2504         <th><strong>Niveau</strong> </th>
2505
2506         <th><strong>Description</strong> </th>
2507
2508         <th><strong>Exemple</strong> </th>
2509       </tr>
2510
2511       <tr>
2512         <td><code>emerg</code> </td>
2513
2514         <td>Urgences - le système est inutilisable.</td>
2515
2516         <td>"Child cannot open lock file. Exiting"</td>
2517       </tr>
2518
2519       <tr>
2520         <td><code>alert</code> </td>
2521
2522         <td>Des mesures doivent être prises immédiatement.</td>
2523
2524         <td>"getpwuid: couldn't determine user name from uid"</td>
2525       </tr>
2526
2527       <tr>
2528         <td><code>crit</code> </td>
2529
2530         <td>Conditions critiques.</td>
2531
2532         <td>"socket: Failed to get a socket, exiting child"</td>
2533       </tr>
2534
2535       <tr>
2536         <td><code>error</code> </td>
2537
2538         <td>Erreurs.</td>
2539
2540         <td>"Premature end of script headers"</td>
2541       </tr>
2542
2543       <tr>
2544         <td><code>warn</code> </td>
2545
2546         <td>Avertissements.</td>
2547
2548         <td>"child process 1234 did not exit, sending another
2549         SIGHUP"</td>
2550       </tr>
2551
2552       <tr>
2553         <td><code>notice</code> </td>
2554
2555         <td>Evènement important mais normal.</td>
2556
2557         <td>"httpd: caught SIGBUS, attempting to dump core in
2558         ..."</td>
2559       </tr>
2560
2561       <tr>
2562         <td><code>info</code> </td>
2563
2564         <td>Informations.</td>
2565
2566         <td>"Server seems busy, (you may need to increase
2567         StartServers, or Min/MaxSpareServers)..."</td>
2568       </tr>
2569
2570       <tr>
2571         <td><code>debug</code> </td>
2572
2573         <td>Messages de débogage.</td>
2574
2575         <td>"Opening config file ..."</td>
2576       </tr>
2577       <tr>
2578         <td><code>trace1</code> </td>
2579
2580         <td>Messages de traces</td>
2581
2582         <td>"proxy: FTP: control connection complete"</td>
2583       </tr>
2584       <tr>
2585         <td><code>trace2</code> </td>
2586
2587         <td>Messages de traces</td>
2588
2589         <td>"proxy: CONNECT: sending the CONNECT request to the remote proxy"</td>
2590       </tr>
2591       <tr>
2592         <td><code>trace3</code> </td>
2593
2594         <td>Messages de traces</td>
2595
2596         <td>"openssl: Handshake: start"</td>
2597       </tr>
2598       <tr>
2599         <td><code>trace4</code> </td>
2600
2601         <td>Messages de traces</td>
2602
2603         <td>"read from buffered SSL brigade, mode 0, 17 bytes"</td>
2604       </tr>
2605       <tr>
2606         <td><code>trace5</code> </td>
2607
2608         <td>Messages de traces</td>
2609
2610         <td>"map lookup FAILED: map=rewritemap key=keyname"</td>
2611       </tr>
2612       <tr>
2613         <td><code>trace6</code> </td>
2614
2615         <td>Messages de traces</td>
2616
2617         <td>"cache lookup FAILED, forcing new map lookup"</td>
2618       </tr>
2619       <tr>
2620         <td><code>trace7</code> </td>
2621
2622         <td>Messages de traces, enregistrement d'une grande quantité de
2623         données</td>
2624
2625         <td>"| 0000: 02 23 44 30 13 40 ac 34 df 3d bf 9a 19 49 39 15 |"</td>
2626       </tr>
2627       <tr>
2628         <td><code>trace8</code> </td>
2629
2630         <td>Messages de traces, enregistrement d'une grande quantité de
2631         données</td>
2632
2633         <td>"| 0000: 02 23 44 30 13 40 ac 34 df 3d bf 9a 19 49 39 15 |"</td>
2634       </tr>
2635     </table>
2636
2637     <p>Lorsqu'un niveau particulier est spécifié, les messages de tous
2638     les autres niveaux de criticité supérieure seront aussi enregistrés.
2639     <em>Par exemple</em>, si <code>LogLevel info</code> est spécifié,
2640     les messages de niveaux <code>notice</code> et <code>warn</code>
2641     seront aussi émis.</p>
2642
2643     <p>Il est recommandé d'utiliser un niveau <code>crit</code> ou
2644     inférieur.</p>
2645
2646     <p>Par exemple :</p>
2647
2648     <div class="example"><p><code>
2649       LogLevel notice
2650     </code></p></div>
2651
2652     <div class="note"><h3>Note</h3>
2653       <p>Si la journalisation s'effectue directement dans un fichier,
2654       les messages de niveau <code>notice</code> ne peuvent pas être
2655       supprimés et sont donc toujours journalisés. Cependant, ceci ne
2656       s'applique pas lorsque la journalisation s'effectue vers
2657       <code>syslog</code>.</p>
2658     </div>
2659     
2660     <p>Spécifier un niveau sans nom de module va attribuer ce niveau à
2661     tous les modules. Spécifier un niveau avec nom de module va
2662     attribuer ce niveau à ce module seulement. Il est possible de
2663     spécifier un module par le nom de son fichier source ou par son
2664     identificateur, avec ou sans le suffixe <code>_module</code>. Les
2665     trois spécifications suivantes sont donc équivalentes :</p>
2666
2667     <div class="example"><p><code>
2668       LogLevel info ssl:warn<br />
2669       LogLevel info mod_ssl.c:warn<br />
2670       LogLevel info ssl_module:warn<br />
2671     </code></p></div>
2672
2673     <p>Il est aussi possible d'attribuer un niveau de journalisation par
2674     répertoire :</p>
2675
2676     <div class="example"><p><code>
2677         LogLevel info<br />
2678         &lt;Directory /usr/local/apache/htdocs/app&gt;<br />
2679         &nbsp; LogLevel debug<br />
2680         &lt;/Files&gt;
2681     </code></p></div>
2682
2683     <div class="note">
2684         La configuration du niveau de journalisation par répertoire
2685         n'affecte que les messages journalisés après l'interprétation de
2686         la requête et qui sont associés à cette dernière. Les messages
2687         de journalisation associés à la connexion ou au serveur ne sont
2688         pas affectés.
2689     </div>
2690
2691 </div>
2692 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2693 <div class="directive-section"><h2><a name="MaxKeepAliveRequests" id="MaxKeepAliveRequests">MaxKeepAliveRequests</a> <a name="maxkeepaliverequests" id="maxkeepaliverequests">Directive</a></h2>
2694 <table class="directive">
2695 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de requêtes permises pour une connexion
2696 persistante</td></tr>
2697 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxKeepAliveRequests <var>nombre</var></code></td></tr>
2698 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>MaxKeepAliveRequests 100</code></td></tr>
2699 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
2700 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2701 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2702 </table>
2703     <p>La directive <code class="directive">MaxKeepAliveRequests</code> permet
2704     de limiter le nombre de requêtes autorisées par connexion lorsque
2705     <code class="directive"><a href="#keepalive">KeepAlive</a></code> est à "on". Si sa
2706     valeur est <code>0</code>, le nombre de requêtes autorisées est
2707     illimité. Il est recommandé de définir une valeur assez haute pour
2708     des performances du serveur maximales.</p>
2709
2710     <p>Par exemple :</p>
2711
2712     <div class="example"><p><code>
2713       MaxKeepAliveRequests 500
2714     </code></p></div>
2715
2716 </div>
2717 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2718 <div class="directive-section"><h2><a name="Mutex" id="Mutex">Mutex</a> <a name="mutex" id="mutex">Directive</a></h2>
2719 <table class="directive">
2720 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit les mécanismes de mutex et le repertoire du fichier
2721 verrou pour tous les mutex ou seulement les mutex spécifiés</td></tr>
2722 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Mutex <var>mécanisme</var> [default|<var>nom-mutex</var>] ... [OmitPID]</code></td></tr>
2723 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Mutex default</code></td></tr>
2724 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
2725 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2726 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2727 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.4 du serveur HTTP Apache</td></tr>
2728 </table>
2729     <p>La directive <code class="directive">Mutex</code> permet de définir le
2730     mécanisme de mutex, et éventuellement le répertoire du fichier
2731     verrou que les modules et httpd utilisent pour sérialiser l'accès aux
2732     ressources. Spécifiez <code>default</code> comme premier argument
2733     pour modifier la configuration de tous les mutex ; spécifiez un nom
2734     de mutex (voir la table ci-dessous) comme premier argument pour
2735     ne modifier que la configuration de ce mutex.</p>
2736
2737     <p>La directive <code class="directive">Mutex</code> est typiquement
2738     utilisée dans les situations exceptionnelles suivantes :</p>
2739
2740     <ul>
2741         <li>choix d'un autre mécanisme de mutex lorsque le mécanisme par
2742         défaut sélectionné par <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a> présente un
2743         problème de fonctionnement ou de performances.</li>
2744
2745         <li>choix d'un autre répertoire utilisé par les mutex à base de
2746         fichier lorsque le répertoire par défaut ne supporte pas le
2747         verrouillage</li>
2748     </ul>
2749
2750     <div class="note"><h3>Modules supportés</h3>
2751     <p>Cette directive ne configure que les mutex qui ont été
2752     enregistrés avec le serveur de base via l'API
2753     <code>ap_mutex_register()</code>. Tous les modules fournis avec
2754     httpd supportent la directive <code class="directive">Mutex</code>, mais il
2755     n'en sera pas forcément de même pour les modules tiers.
2756     Reportez-vous à la documentation du module tiers considéré afin de
2757     déterminer le(s) nom(s) de mutex qui pourront être définis si la
2758     directive est supportée.</p>
2759     </div>
2760
2761     
2762
2763     <p>Les <em>mécanismes</em> de mutex disponibles sont les suivants :</p>
2764     <ul>
2765         <li><code>default | yes</code>
2766         <p>C'est l'implémentation du verrouillage par défaut, telle
2767         qu'elle est définie par <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a>. On peut
2768         afficher l'implémentation du verrouillage par défaut via la
2769         commande <code class="program"><a href="../programs/httpd.html">httpd</a></code> avec l'option <code>-V</code>.</p></li>
2770
2771         <li><code>none | no</code>
2772         <p>Le mutex est désactivé, et cette valeur n'est permise pour un
2773         mutex que si le module indique qu'il s'agit d'un choix valide.
2774         Consultez la documentation du module pour plus d'informations.</p></li>
2775
2776         <li><code>posixsem</code>
2777         <p>Une variante de mutex basée sur un sémaphore Posix.</p>
2778
2779         <div class="warning"><h3>Avertissement</h3>
2780         <p>La propriété du sémaphore n'est pas restituée si un thread du
2781         processus gérant le mutex provoque une erreur de segmentation,
2782         ce qui provoquera un blocage du serveur web.</p>
2783         </div>
2784         </li>
2785
2786         <li><code>sysvsem</code>
2787         <p>Une variante de mutex basée sur un sémaphore IPC SystemV.</p>
2788
2789         <div class="warning"><h3>Avertissement</h3>
2790         <p>Il peut arriver que les sémaphores SysV soient conservés si le
2791         processus se crashe avant que le sémaphore ne soit supprimé.</p>
2792         </div>
2793
2794         <div class="warning"><h3>Sécurité</h3>
2795         <p>L'API des sémaphores permet les attaques par déni de service
2796         par tout programme CGI s'exécutant sous le même uid que le
2797         serveur web (autrement dit tous les programmes CGI, à moins que
2798         vous n'utilisiez un programme du style <code class="program"><a href="../programs/suexec.html">suexec</a></code>
2799         ou <code>cgiwrapper</code>).</p>
2800         </div>
2801         </li>
2802
2803         <li><code>sem</code>
2804         <p>Sélection de la "meilleure" implémentation des sémaphores
2805         disponible ; le choix s'effectue entre les sémaphores posix et
2806         IPC SystemV, dans cet ordre.</p></li>
2807
2808         <li><code>pthread</code>
2809         <p>Une variante de mutex à base de mutex de thread Posix
2810         inter-processus.</p>
2811
2812         <div class="warning"><h3>Avertissement</h3>
2813         <p>Sur la plupart des systèmes, si un processus enfant se
2814         termine anormalement alors qu'il détenait un mutex qui utilise
2815         cette implémentation, le serveur va se bloquer et cesser de
2816         répondre aux requêtes. Dans ce cas, un redémarrage manuel est
2817         nécessaire pour récupérer le mutex.</p>
2818         <p>Solaris constitue une exception notable, en ceci qu'il fournit
2819         un mécanisme qui permet en général de récupérer le mutex après
2820         l'arrêt anormal d'un processus enfant qui détenait le mutex.</p>
2821         <p>Si votre système implémente la fonction
2822         <code>pthread_mutexattr_setrobust_np()</code>, vous devriez
2823         pouvoir utiliser l'option <code>pthread</code> sans problème.</p>
2824         </div>
2825         </li>
2826
2827         <li><code>fcntl:/chemin/vers/mutex</code>
2828         <p>Une variante de mutex utilisant un fichier verrou physique et
2829         la fonction <code>fcntl()</code>.</p>
2830
2831         <div class="warning"><h3>Avertissement</h3>
2832         <p>Lorsqu'on utilise plusieurs mutex basés sur ce mécanisme dans
2833         un environnement multi-processus, multi-thread, des erreurs de
2834         blocage (EDEADLK) peuvent être rapportées pour des opérations de
2835         mutex valides si la fonction <code>fcntl()</code> ne gère pas
2836         les threads, comme sous Solaris.</p>
2837         </div>
2838         </li>
2839
2840         <li><code>flock:/chemin/vers/mutex</code>
2841         <p>Méthode similaire à <code>fcntl:/chemin/vers/mutex</code>,
2842         mais c'est la fonction <code>flock()</code> qui est utilisée
2843         pour gérer le verrouillage par fichier.</p></li>
2844
2845         <li><code>file:/chemin/vers/mutex</code>
2846         <p>Sélection de la "meilleure" implémentation de verrouillage
2847         par fichier disponible ; le choix s'effectue entre
2848         <code>fcntl</code> et <code>flock</code>, dans cet ordre.</p></li>
2849     </ul>
2850
2851     <p>La plupart des mécanismes ne sont disponibles que sur les
2852     plate-formes où ces dernières et <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a> les
2853     supportent. Les mécanismes qui ne sont pas disponibles sur toutes
2854     les plate-formes sont <em>posixsem</em>,
2855     <em>sysvsem</em>, <em>sem</em>, <em>pthread</em>, <em>fcntl</em>, 
2856     <em>flock</em>, et <em>file</em>.</p>
2857
2858     <p>Avec les mécanismes à base de fichier <em>fcntl</em> et
2859     <em>flock</em>, le chemin, s'il est fourni, est un répertoire dans
2860     lequel le fichier verrou sera créé. Le répertoire par défaut est le
2861     répertoire httpd défini par la directive <code class="directive"><a href="#serverroot">ServerRoot</a></code>. Utilisez toujours un système
2862     de fichiers local sur disque pour <code>/chemin/vers/mutex</code> et
2863     jamais un répertoire se trouvant dans un système de fichiers NFS ou
2864     AFS. Le nom de base du fichier se composera du type de mutex, d'une
2865     chaîne optionnelle correspondant à l'instance et fournie par le
2866     module ; et, sauf si le mot-clé <code>OmitPID</code> a été spécifié,
2867     l'identificateur du processus parent httpd sera ajouté afin de
2868     rendre le nom du fichier unique, évitant ainsi tout conflit lorsque
2869     plusieurs instances d'httpd partagent le même répertoire de
2870     verrouillage. Par exemple, si le nom de mutex est
2871     <code>mpm-accept</code>, et si le répertoire de verrouillage est
2872     <code>/var/httpd/locks</code>, le nom du fichier verrou pour
2873     l'instance httpd dont le processus parent a pour identifiant 12345
2874     sera <code>/var/httpd/locks/mpm-accept.12345</code>.</p>
2875
2876     <div class="warning"><h3>Sécurité</h3>
2877     <p>Il est déconseillé d'<em>éviter</em> de placer les fichiers mutex
2878     dans un répertoire où tout le monde peut écrire comme
2879     <code>/var/tmp</code>, car quelqu'un pourrait initier une attaque
2880     par déni de service et empêcher le serveur de démarrer en créant un
2881     fichier verrou possédant un nom identique à celui que le serveur va
2882     tenter de créer.</p>
2883     </div>
2884
2885     <p>La table suivante décrit les noms de mutex utilisés par httpd et
2886     ses modules associés.</p>
2887
2888     <table class="bordered"><tr class="header">
2889             <th>Nom mutex</th>
2890             <th>Module(s)</th>
2891             <th>Ressource protégée</th>
2892         </tr>
2893 <tr>
2894             <td><code>mpm-accept</code></td>
2895             <td>modules MPM <code class="module"><a href="../mod/prefork.html">prefork</a></code> et <code class="module"><a href="../mod/worker.html">worker</a></code></td>
2896             <td>connexions entrantes, afin d'éviter le problème de
2897             l'afflux de requêtes ; pour plus d'informations, voir la
2898             documentation <a href="../misc/perf-tuning.html">Amélioration des
2899             performances</a></td>
2900         </tr>
2901 <tr class="odd">
2902             <td><code>authdigest-client</code></td>
2903             <td><code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code></td>
2904             <td>liste de clients en mémoire partagée</td>
2905         </tr>
2906 <tr>
2907             <td><code>authdigest-opaque</code></td>
2908             <td><code class="module"><a href="../mod/mod_auth_digest.html">mod_auth_digest</a></code></td>
2909             <td>compteur en mémoire partagée</td>
2910         </tr>
2911 <tr class="odd">
2912             <td><code>ldap-cache</code></td>
2913             <td><code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code></td>
2914             <td>cache de résultat de recherche LDAP</td>
2915         </tr>
2916 <tr>
2917             <td><code>rewrite-map</code></td>
2918             <td><code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code></td>
2919             <td>communication avec des programmes externes
2920             d'associations de valeurs, afin d'éviter les interférences
2921             d'entrées/sorties entre plusieurs requêtes</td>
2922         </tr>
2923 <tr class="odd">
2924             <td><code>ssl-cache</code></td>
2925             <td><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code></td>
2926             <td>cache de session SSL</td>
2927         </tr>
2928 <tr>
2929             <td><code>ssl-stapling</code></td>
2930             <td><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code></td>
2931             <td>cache de l'étiquetage OCSP ("OCSP stapling")</td>
2932         </tr>
2933 <tr class="odd">
2934             <td><code>watchdog-callback</code></td>
2935             <td><code class="module"><a href="../mod/mod_watchdog.html">mod_watchdog</a></code></td>
2936             <td>fonction de rappel d'un module client particulier</td>
2937         </tr>
2938 </table>
2939
2940     <p>Le mot-clé <code>OmitPID</code> permet d'empêcher l'addition de
2941     l'identifiant du processus httpd parent au nom du fichier verrou.</p>
2942
2943
2944     <p>Dans l'exemple suivant, le mécanisme de mutex pour le mutex
2945     mpm-accept est modifié pour passer du mécanisme par défaut au
2946     mécanisme <code>fcntl</code>, avec le fichier verrou associé créé
2947     dans le répertoire <code>/var/httpd/locks</code>. Le mécanisme de
2948     mutex par défaut pour tous les autres mutex deviendra
2949     <code>sysvsem</code>.</p>
2950
2951     <div class="example"><p><code>
2952     Mutex default sysvsem<br />
2953     Mutex mpm-accept fcntl:/var/httpd/locks
2954     </code></p></div>
2955
2956 </div>
2957 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
2958 <div class="directive-section"><h2><a name="NameVirtualHost" id="NameVirtualHost">NameVirtualHost</a> <a name="namevirtualhost" id="namevirtualhost">Directive</a></h2>
2959 <table class="directive">
2960 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit une adresse IP pour les serveurs virtuels à base de
2961 nom</td></tr>
2962 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>NameVirtualHost <var>adresse</var>[:<var>port</var>]</code></td></tr>
2963 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
2964 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
2965 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
2966 </table>
2967
2968 <p>Une seule directive <code class="directive">NameVirtualHost</code> permet
2969 d'identifier un ensemble de serveurs virtuels identiques que le serveur
2970 va sélectionner en fonction du <em>nom d'hôte</em> spécifié par le
2971 client. La directive <code class="directive">NameVirtualHost</code> est
2972 obligatoire si vous souhaitez configurer des <a href="../vhosts/">serveurs virtuels à base de nom</a>.</p>
2973
2974 <p>Cette directive, ainsi que les directives <code class="directive">VirtualHost</code> correspondantes, <em>doit</em> comporter un
2975 numéro de port si le serveur supporte les connexions HTTP et HTTPS.</p>
2976
2977 <p>Bien que <var>adresse</var> puisse contenir un nom d'hôte, il est
2978 recommandé d'utiliser plutôt une adresse IP ou un nom d'hôte avec
2979 caractères génériques. Une directive NameVirtualHost contenant des
2980 caractères génériques ne peut correspondre qu'à des serveurs virtuels
2981 qui contiennent aussi des caractères génériques dans leur argument.</p>
2982
2983 <p>Dans les cas où un pare-feu ou autre mandataire reçoit les requêtes
2984 et les redirige sous une adresse IP différente vers le serveur, vous
2985 devez spécifier l'adresse IP de l'interface physique de la machine qui
2986 va servir les requêtes.</p>
2987
2988 <p>Dans l'exemple ci-dessous, les requêtes reçues sur l'interface
2989 192.0.2.1 et le port 80 ne vont déclencher une sélection que parmi les
2990 deux premiers serveurs virtuels. Les requêtes reçues sur le port 80 et
2991 sur toute interface ne vont déclencher une sélection que parmi les
2992 troisième et quatrième serveurs virtuels. D'une manière générale,
2993 lorsque l'interface ne constitue pas un critère important de sélection,
2994 la valeur "*:80" suffit pour les directives NameVirtualHost et
2995 VirtualHost.</p>
2996
2997 <div class="example"><p><code>
2998       NameVirtualHost 192.0.2.1:80<br />
2999       NameVirtualHost *:80<br /><br />
3000
3001       &lt;VirtualHost 192.0.2.1:80&gt;<br />
3002       &nbsp; ServerName namebased-a.example.com<br />
3003       &lt;/VirtualHost&gt;<br />
3004       <br />
3005       &lt;VirtualHost 192.0.2.1:80&gt;<br />
3006       &nbsp; Servername namebased-b.example.com<br />
3007       &lt;/VirtualHost&gt;<br />
3008       <br />
3009       &lt;VirtualHost *:80&gt;<br />
3010       &nbsp; ServerName namebased-c.example.com <br />
3011       &lt;/VirtualHost&gt;<br />
3012       <br />
3013       &lt;VirtualHost *:80&gt;<br />
3014       &nbsp; ServerName namebased-d.example.com <br />
3015       &lt;/VirtualHost&gt;<br />
3016       <br />
3017
3018    </code></p></div>
3019
3020    <p>Si aucun serveur virtuel ne correspond, c'est le premier serveur
3021    virtuel correspondant à l'adresse IP qui sera utilisé.</p>
3022
3023     <p>Les adresses IPv6 doivent être entourées de crochets, comme dans
3024     l'exemple suivant :</p>
3025
3026     <div class="example"><p><code>
3027       NameVirtualHost [2001:db8::a00:20ff:fea7:ccea]:8080
3028     </code></p></div>
3029
3030
3031
3032     <div class="note"><h3>Argument de la directive <code class="directive">&lt;VirtualHost&gt;</code></h3>
3033       <p>Notez que l'argument de la directive <code class="directive">&lt;VirtualHost&gt;</code> doit être identique à
3034        l'argument de la directive <code class="directive">NameVirtualHost</code>.</p>
3035
3036       <div class="example"><p><code>
3037         NameVirtualHost 192.0.2.2:80<br />
3038         &lt;VirtualHost 192.0.2.2:80&gt;<br />
3039         # ...<br />
3040         &lt;/VirtualHost&gt;<br />
3041       </code></p></div>
3042     </div>
3043
3044 <h3>Voir aussi</h3>
3045 <ul>
3046 <li><a href="../vhosts/">Documentation sur les serveurs
3047 virtuels</a></li>
3048 </ul>
3049 </div>
3050 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3051 <div class="directive-section"><h2><a name="Options" id="Options">Options</a> <a name="options" id="options">Directive</a></h2>
3052 <table class="directive">
3053 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit les fonctionnalités disponibles pour un répertoire
3054 particulier</td></tr>
3055 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Options
3056     [+|-]<var>option</var> [[+|-]<var>option</var>] ...</code></td></tr>
3057 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Options All</code></td></tr>
3058 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3059 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>Options</td></tr>
3060 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3061 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3062 </table>
3063     <p>La directive <code class="directive">Options</code> permet de définir
3064     les fonctionnalités de serveur disponibles pour un répertoire
3065     particulier.</p>
3066
3067     <p><var>option</var> peut être défini à <code>None</code>, auquel
3068     cas aucune fonctionnalité spécifique n'est activée, ou comprendre
3069     une ou plusieurs des options suivantes :</p>
3070
3071     <dl>
3072       <dt><code>All</code></dt>
3073
3074       <dd>Toutes les options excepté <code>MultiViews</code>. il s'agit
3075       de la configuration par défaut.</dd>
3076
3077       <dt><code>ExecCGI</code></dt>
3078
3079       <dd>L'exécution de scripts CGI à l'aide du module
3080       <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> est permise.</dd>
3081
3082       <dt><code>FollowSymLinks</code></dt>
3083
3084       <dd>
3085
3086       Le serveur va suivre les liens symboliques dans le répertoire
3087       concerné.
3088       <div class="note">
3089       <p>Bien que le serveur suive les liens symboliques, il ne modifie
3090       <em>pas</em> le nom de chemin concerné défini par la section
3091       <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>.</p>
3092       <p>Notez aussi que cette option <strong>est ignorée</strong> si
3093       elle est définie dans une section <code class="directive"><a href="#location">&lt;Location&gt;</a></code>.</p>
3094       <p>Le fait d'omettre cette option ne doit pas être considéré comme
3095       une mesure de sécurité efficace, car il existe toujours une
3096       situation de compétition (race condition) entre l'instant où l'on
3097       vérifie qu'un chemin n'est pas un lien symbolique, et l'instant où
3098       l'on utilise effectivement ce chemin.</p>
3099       </div></dd>
3100
3101       <dt><code>Includes</code></dt>
3102
3103       <dd>
3104       Les inclusions côté serveur (SSI) à l'aide du module
3105       <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> sont autorisées.</dd>
3106
3107       <dt><code>IncludesNOEXEC</code></dt>
3108
3109       <dd>
3110
3111       Les inclusions côté serveur (SSI) sont permises, mais <code>#exec
3112       cmd</code> et <code>#exec cgi</code> sont désactivés.
3113       L'utilisation de <code>#include virtual</code> pour les scripts
3114       CGI est cependant toujours possible depuis des répertoires
3115       définis par <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>.</dd>
3116
3117       <dt><code>Indexes</code></dt>
3118
3119       <dd>
3120       Si une URL requise correspond au répertoire concerné, et si aucun
3121       <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> (<em>par
3122       exemple</em> <code>index.html</code>) n'est défini pour ce
3123       répertoire, le module <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> va renvoyer
3124       un listing formaté du répertoire.</dd>
3125
3126       <dt><code>MultiViews</code></dt>
3127
3128       <dd>
3129       Les vues multiples ("multiviews") à <a href="../content-negotiation.html">contenu négocié</a> à l'aide du
3130       module <code class="module"><a href="../mod/mod_negotiation.html">mod_negotiation</a></code> sont autorisées.</dd>
3131
3132       <dt><code>SymLinksIfOwnerMatch</code></dt>
3133
3134       <dd>Le serveur ne suivra que les liens symboliques qui renvoient
3135       vers un fichier ou un répertoire dont le propriétaire est le même
3136       que celui du lien.
3137
3138       <div class="note"><h3>Note</h3> <p>Cette option est ignorée si elle est
3139       définie dans une section <code class="directive"><a href="#location">&lt;Location&gt;</a></code>.</p>
3140       <p>Le fait d'omettre cette option ne doit pas être considéré comme
3141       une mesure de sécurité efficace, car il existe toujours une
3142       situation de compétition (race condition) entre l'instant où l'on
3143       vérifie qu'un chemin n'est pas un lien symbolique, et l'instant où
3144       l'on utilise effectivement ce chemin.</p></div>
3145       </dd>
3146     </dl>
3147
3148     <p>Normalement, si plusieurs directives
3149     <code class="directive">Options</code> peuvent s'appliquer à un répertoire,
3150     c'est la plus spécifique qui est utilisée et les autres sont
3151     ignorées ; les options ne sont pas fusionnées (voir <a href="../sections.html#mergin">comment les sections sont
3152     fusionnées</a>). Elles le sont cependant si <em>toutes</em> les
3153     options de la directive <code class="directive">Options</code> sont
3154     précédées d'un symbole <code>+</code> ou <code>-</code>. Toute
3155     option précédée d'un <code>+</code> est ajoutée à la liste des
3156     options courantes de manière forcée et toute option précédée d'un
3157     <code>-</code> est supprimée de la liste des options courantes de la
3158     même manière.</p>
3159
3160     <div class="warning"><h3>Avertissement</h3>
3161     <p>Mélanger des <code class="directive">Options</code> avec <code>+</code>
3162     ou <code>-</code> avec des <code class="directive">Options</code> sans
3163     <code>+</code> ou <code>-</code> constitue une erreur de syntaxe, et
3164     peut résulter en des comportements inattendus.</p>
3165     </div>
3166
3167     <p>Par exemple, sans aucun symbole <code>+</code> et <code>-</code>
3168     :</p>
3169
3170     <div class="example"><p><code>
3171       &lt;Directory /web/docs&gt;<br />
3172       <span class="indent">
3173         Options Indexes FollowSymLinks<br />
3174       </span>
3175       &lt;/Directory&gt;<br />
3176       <br />
3177       &lt;Directory /web/docs/spec&gt;<br />
3178       <span class="indent">
3179         Options Includes<br />
3180       </span>
3181       &lt;/Directory&gt;
3182     </code></p></div>
3183
3184     <p>ici, seule l'option <code>Includes</code> sera prise en compte
3185     pour le répertoire <code>/web/docs/spec</code>. Par contre, si la
3186     seconde directive <code class="directive">Options</code> utilise les
3187     symboles <code>+</code> et <code>-</code> :</p>
3188
3189     <div class="example"><p><code>
3190       &lt;Directory /web/docs&gt;<br />
3191       <span class="indent">
3192         Options Indexes FollowSymLinks<br />
3193       </span>
3194       &lt;/Directory&gt;<br />
3195       <br />
3196       &lt;Directory /web/docs/spec&gt;<br />
3197       <span class="indent">
3198         Options +Includes -Indexes<br />
3199       </span>
3200       &lt;/Directory&gt;
3201     </code></p></div>
3202
3203     <p>alors, les options <code>FollowSymLinks</code> et
3204     <code>Includes</code> seront prises en compte pour le répertoire
3205     <code>/web/docs/spec</code>.</p>
3206
3207     <div class="note"><h3>Note</h3>
3208       <p>L'utilisation de <code>-IncludesNOEXEC</code> ou
3209       <code>-Includes</code> désactive complètement les inclusions côté
3210       serveur sans tenir compte des définitions précédentes.</p>
3211     </div>
3212
3213     <p>En l'absence de toute définition d'options, la valeur par défaut
3214     est <code>All</code>.</p>
3215
3216 </div>
3217 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3218 <div class="directive-section"><h2><a name="RLimitCPU" id="RLimitCPU">RLimitCPU</a> <a name="rlimitcpu" id="rlimitcpu">Directive</a></h2>
3219 <table class="directive">
3220 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Limite le temps CPU alloué aux processus initiés par les
3221 processus enfants d'Apache httpd</td></tr>
3222 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RLimitCPU <var>secondes</var>|max [<var>secondes</var>|max]</code></td></tr>
3223 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Non défini ; utilise les valeurs par défaut du système
3224 d'exploitation</code></td></tr>
3225 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3226 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
3227 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3228 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3229 </table>
3230     <p>Prend 1 ou 2 paramètres. Le premier definit la limite de
3231     consommation de ressources pour tous les processus, et le second la
3232     consommation de ressources maximale. Les deux paramètres peuvent
3233     contenir soit un nombre, soit <code>max</code> pour indiquer au
3234     serveur que la limite de consommation correspond à la valeur
3235     maximale autorisée par la configuration du système d'exploitation.
3236     Pour augmenter la consommation maximale de ressources, le serveur
3237     doit s'exécuter en tant que <code>root</code>, ou se trouver dans sa
3238     phase de démarrage.</p>
3239
3240     <p>Cette directive s'applique aux processus initiés par les
3241     processus enfants d'Apache httpd qui traitent les requêtes, et non aux
3242     processus enfants eux-mêmes. Sont concernés les scripts CGI et les
3243     commandes exec des SSI, mais en aucun cas les processus initiés par
3244     le processus parent d'Apache httpd comme les journalisations redirigées
3245     vers un programme.</p>
3246
3247     <p>Les limites de ressources CPU sont exprimées en secondes par
3248     processus.</p>
3249
3250 <h3>Voir aussi</h3>
3251 <ul>
3252 <li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
3253 <li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
3254 </ul>
3255 </div>
3256 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3257 <div class="directive-section"><h2><a name="RLimitMEM" id="RLimitMEM">RLimitMEM</a> <a name="rlimitmem" id="rlimitmem">Directive</a></h2>
3258 <table class="directive">
3259 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Limite la mémoire allouée aux processus initiés par les
3260 processus enfants d'Apache httpd</td></tr>
3261 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RLimitMEM <var>octets</var>|max [<var>octets</var>|max]</code></td></tr>
3262 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Non défini ; utilise les valeurs par défaut du système
3263 d'exploitation</code></td></tr>
3264 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3265 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
3266 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3267 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3268 </table>
3269     <p>Prend 1 ou 2 paramètres. Le premier definit la limite de
3270     consommation de ressources pour tous les processus, et le second la
3271     consommation de ressources maximale. Les deux paramètres peuvent
3272     contenir soit un nombre, soit <code>max</code> pour indiquer au
3273     serveur que la limite de consommation correspond à la valeur
3274     maximale autorisée par la configuration du système d'exploitation.
3275     Pour augmenter la consommation maximale de ressources, le serveur
3276     doit s'exécuter en tant que <code>root</code>, ou se trouver dans sa
3277     phase de démarrage.</p>
3278
3279     <p>Cette directive s'applique aux processus initiés par les
3280     processus enfants d'Apache httpd qui traitent les requêtes, et non aux
3281     processus enfants eux-mêmes. Sont concernés les scripts CGI et les
3282     commandes exec des SSI, mais en aucun cas les processus initiés par
3283     le processus parent d'Apache httpd comme les journalisations redirigées
3284     vers un programme.</p>
3285
3286     <p>Les limites de ressources mémoire sont exprimées en octets par
3287     processus.</p>
3288
3289 <h3>Voir aussi</h3>
3290 <ul>
3291 <li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
3292 <li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
3293 </ul>
3294 </div>
3295 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3296 <div class="directive-section"><h2><a name="RLimitNPROC" id="RLimitNPROC">RLimitNPROC</a> <a name="rlimitnproc" id="rlimitnproc">Directive</a></h2>
3297 <table class="directive">
3298 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Limite le nombre de processus qui peuvent être initiés par
3299 les processus initiés par les processus enfants d'Apache httpd</td></tr>
3300 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RLimitNPROC <var>nombre</var>|max [<var>nombre</var>|max]</code></td></tr>
3301 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Unset; uses operating system defaults</code></td></tr>
3302 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3303 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
3304 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3305 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3306 </table>
3307     <p>Prend 1 ou 2 paramètres. Le premier definit la limite de
3308     consommation de ressources pour tous les processus, et le second la
3309     consommation de ressources maximale. Les deux paramètres peuvent
3310     contenir soit un nombre, soit <code>max</code> pour indiquer au
3311     serveur que la limite de consommation correspond à la valeur
3312     maximale autorisée par la configuration du système d'exploitation.
3313     Pour augmenter la consommation maximale de ressources, le serveur
3314     doit s'exécuter en tant que <code>root</code>, ou se trouver dans sa
3315     phase de démarrage.</p>
3316
3317     <p>Cette directive s'applique aux processus initiés par les
3318     processus enfants d'Apache httpd qui traitent les requêtes, et non aux
3319     processus enfants eux-mêmes. Sont concernés les scripts CGI et les
3320     commandes exec des SSI, mais en aucun cas les processus initiés par
3321     le processus parent d'Apache httpd comme les journalisations redirigées
3322     vers un programme.</p>
3323
3324     <p>Les limites des processus contrôlent le nombre de processus par
3325     utilisateur.</p>
3326
3327     <div class="note"><h3>Note</h3>
3328       <p>Si les processus CGI s'exécutent sous le même
3329       utilisateur que celui du serveur web, cette
3330       directive va limiter le nombre de processus que le serveur
3331       pourra lui-même créer. La présence de messages
3332       <strong><code>cannot fork</code></strong> dans le journal des
3333       erreurs indiquera que la limite est atteinte.</p>
3334     </div>
3335
3336 <h3>Voir aussi</h3>
3337 <ul>
3338 <li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
3339 <li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
3340 </ul>
3341 </div>
3342 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3343 <div class="directive-section"><h2><a name="ScriptInterpreterSource" id="ScriptInterpreterSource">ScriptInterpreterSource</a> <a name="scriptinterpretersource" id="scriptinterpretersource">Directive</a></h2>
3344 <table class="directive">
3345 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Permet de localiser l'interpréteur des scripts
3346 CGI</td></tr>
3347 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ScriptInterpreterSource Registry|Registry-Strict|Script</code></td></tr>
3348 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ScriptInterpreterSource Script</code></td></tr>
3349 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3350 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
3351 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3352 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3353 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Win32 seulement ;
3354 l'option <code>Registry-Strict</code> est disponible dans les versions
3355 2.0 et supérieures du serveur HTTP Apache</td></tr>
3356 </table>
3357     <p>Cette directive permet de contrôler la méthode qu'utilise Apache
3358     httpd pour trouver l'interpréteur destiné à exécuter les scripts CGI. La
3359     définition par défaut est <code>Script</code> : ceci indique à
3360     Apache httpd qu'il doit utiliser l'interpréteur précisé dans la ligne
3361     shebang du script (la première ligne, commençant par
3362     <code>#!</code>). Sur les systèmes Win32, cette ligne ressemble
3363     souvent à ceci :</p>
3364
3365     <div class="example"><p><code>
3366       #!C:/Perl/bin/perl.exe
3367     </code></p></div>
3368
3369     <p>ou simplement, dans le cas où <code>perl</code> est dans le
3370     <code>PATH</code> :</p>
3371
3372     <div class="example"><p><code>
3373       #!perl
3374     </code></p></div>
3375
3376     <p>Avec <code>ScriptInterpreterSource Registry</code>, Windows va
3377     effectuer une recherche dans l'arborescence
3378     <code>HKEY_CLASSES_ROOT</code> de la base de registre avec comme
3379     mot-clé l'extension du fichier contenant le script (par exemple
3380     <code>.pl</code>). C'est la commande définie par la sous-clé de
3381     registre <code>Shell\ExecCGI\Command</code> ou, si elle n'existe
3382     pas, la sous-clé <code>Shell\Open\Command</code> qui est utilisée
3383     pour ouvrir le fichier du script. Si ces clés de registre ne sont
3384     pas trouvées, Apache httpd utilise la méthode de l'option
3385     <code>Script</code>.</p>
3386
3387     <div class="warning"><h3>Sécurité</h3>
3388     <p>Soyez prudent si vous utilisez <code>ScriptInterpreterSource
3389     Registry</code> avec des répertoires faisant l'objet d'un <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>, car Apache httpd va essayer
3390     d'exécuter <strong>tous</strong> les fichiers contenus dans
3391     celui-ci. L'option <code>Registry</code> peut causer des appels de
3392     programmes non voulus sur des fichiers non destinés à être exécutés.
3393     Par exemple, la commande par défaut open sur les fichiers
3394     <code>.htm</code> sur la plupart des systèmes Windows va lancer
3395     Microsoft Internet Explorer ; ainsi, toute requête HTTP pour un
3396     fichier <code>.htm</code> situé dans le répertoire des scripts
3397     va lancer le navigateur en arrière-plan sur le serveur, ce qui a
3398     toutes les chances de crasher votre système dans les minutes qui
3399     suivent.</p>
3400     </div>
3401
3402     <p>L'option <code>Registry-Strict</code>, apparue avec la version
3403     2.0 du serveur HTTP Apache,
3404     agit de manière identique à <code>Registry</code>, mais n'utilise
3405     que la sous-clé <code>Shell\ExecCGI\Command</code>. La présence de
3406     la clé <code>ExecCGI</code> n'étant pas systématique, Elle doit être
3407     définie manuellement dans le registre Windows et évite ainsi tout
3408     appel de programme accidentel sur votre système.</p>
3409
3410 </div>
3411 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3412 <div class="directive-section"><h2><a name="SeeRequestTail" id="SeeRequestTail">SeeRequestTail</a> <a name="seerequesttail" id="seerequesttail">Directive</a></h2>
3413 <table class="directive">
3414 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine si mod_status affiche les 63 premiers caractères
3415 d'une requête ou les 63 derniers, en supposant que la requête
3416 elle-même possède plus de 63 caractères.</td></tr>
3417 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SeeRequestTail On|Off</code></td></tr>
3418 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>SeeRequestTail Off</code></td></tr>
3419 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
3420 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3421 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3422 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.2.7
3423 d'Apache httpd.</td></tr>
3424 </table>
3425     <p>Avec <code>ExtendedStatus On</code>, mod_status affiche la
3426     véritable requête en cours de traitement. Pour des raisons
3427     historiques, seuls 63 caractères de la requête sont réellement
3428     stockés à des fins d'affichage. Cette directive permet de déterminer
3429     si ce sont les 63 premiers caractères qui seront stockés (c'est le
3430     comportement par défaut),
3431     ou si ce sont les 63 derniers. Ceci ne s'applique bien entendu que
3432     si la taille de la requête est de 64 caractères ou plus.</p>
3433
3434     <p>Si Apache httpd traite la requête <code>GET&nbsp;/disque1/stockage/apache/htdocs/images/rep-images1/nourriture/pommes.jpg&nbsp;HTTP/1.1</code>
3435     , l'affichage de la requête par mod_status se présentera comme suit :
3436     </p>
3437
3438     <table class="bordered">
3439       <tr>
3440         <th>Off (défaut)</th>
3441         <td>GET&nbsp;/disque1/stockage/apache/htdocs/images/rep-images1/nourritu</td>
3442       </tr>
3443       <tr>
3444         <th>On</th>
3445         <td>apache/htdocs/images/rep-images1/nourriture/pommes.jpg&nbsp;HTTP/1.1</td>
3446       </tr>
3447     </table>
3448
3449
3450 </div>
3451 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3452 <div class="directive-section"><h2><a name="ServerAdmin" id="ServerAdmin">ServerAdmin</a> <a name="serveradmin" id="serveradmin">Directive</a></h2>
3453 <table class="directive">
3454 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>L'adresse électronique que le serveur inclut dans les
3455 messages d'erreur envoyés au client</td></tr>
3456 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerAdmin <var>adresse électronique</var>|<var>URL</var></code></td></tr>
3457 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
3458 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3459 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3460 </table>
3461     <p>La directive <code class="directive">ServerAdmin</code> permet de définir
3462     l'adresse de contact que le serveur va inclure dans tout message
3463     d'erreur qu'il envoie au client. Si le programme <code>httpd</code>
3464     ne reconnait pas l'argument fourni comme une URL, il suppose que
3465     c'est une <var>adresse électronique</var>, et lui ajoute le préfixe
3466     <code>mailto:</code> dans les cibles des hyperliens. Il est
3467     cependant recommandé d'utiliser exclusivement une adresse
3468     électronique, car de nombreux scripts CGI considèrent ceci comme
3469     implicite. Si vous utilisez une URL, elle doit pointer vers un autre
3470     serveur que vous contrôlez. Dans le cas contraire, les utilisateurs
3471     seraient dans l'impossibilité de vous contacter en cas de problème.</p>
3472
3473     <p>Il peut s'avérer utile de définir une adresse dédiée à
3474     l'administration du serveur, par exemple :</p>
3475
3476     <div class="example"><p><code>
3477       ServerAdmin www-admin@foo.example.com
3478     </code></p></div>
3479     <p>car les utilisateurs ne mentionnent pas systématiquement le
3480     serveur dont ils parlent !</p>
3481
3482 </div>
3483 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3484 <div class="directive-section"><h2><a name="ServerAlias" id="ServerAlias">ServerAlias</a> <a name="serveralias" id="serveralias">Directive</a></h2>
3485 <table class="directive">
3486 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Autres noms d'un serveur utilisables pour atteindre des
3487 serveurs virtuels à base de nom</td></tr>
3488 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerAlias <var>nom serveur</var> [<var>nom serveur</var>]
3489 ...</code></td></tr>
3490 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr>
3491 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3492 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3493 </table>
3494     <p>La directive <code class="directive">ServerAlias</code> permet de définir
3495     les noms alternatifs d'un serveur utilisables pour atteindre des <a href="../vhosts/name-based.html">serveurs virtuels à base de
3496     nom</a>. La directive <code class="directive">ServerAlias</code> peut
3497     contenir des caractères génériques, si nécessaire.</p>
3498
3499     <div class="example"><p><code>
3500       &lt;VirtualHost *:80&gt;<br />
3501       ServerName serveur.domaine.com<br />
3502       ServerAlias serveur serveur2.domaine.com serveur2<br />
3503       ServerAlias *.example.com<br />
3504       UseCanonicalName Off<br />
3505       # ...<br />
3506       &lt;/VirtualHost&gt;
3507     </code></p></div>
3508
3509 <h3>Voir aussi</h3>
3510 <ul>
3511 <li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
3512 <li><a href="../vhosts/">Documentation sur les serveurs virtuels
3513 du serveur HTTP Apache</a></li>
3514 </ul>
3515 </div>
3516 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3517 <div class="directive-section"><h2><a name="ServerName" id="ServerName">ServerName</a> <a name="servername" id="servername">Directive</a></h2>
3518 <table class="directive">
3519 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nom d'hôte et port que le serveur utilise pour
3520 s'authentifier lui-même</td></tr>
3521 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerName [<var>protocole</var>://]<var>nom de domaine
3522 entièrement qualifié</var>[:<var>port</var>]</code></td></tr>
3523 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
3524 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3525 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3526 </table>
3527     <p>La directive <code class="directive">ServerName</code> permet de définir
3528     les protocole, nom d'hôte et port d'une requête que le serveur
3529     utilise pour s'authentifier lui-même. Ceci est utile lors de la
3530     création de redirections d'URLs. Par exemple, si le nom de la
3531     machine hébergeant le serveur web est
3532     <code>simple.example.com</code>, la machine possède l'alias
3533     DNS <code>www.example.com</code>, et si vous voulez que le serveur
3534     web s'identifie avec cet alias, vous devez utilisez la définition
3535     suivante :</p>
3536
3537     <div class="example"><p><code>
3538       ServerName www.example.com:80
3539     </code></p></div>
3540
3541     <p>La directive <code class="directive">ServerName</code> peut apparaître à
3542     toutes les étapes de la définition du serveur. Toute occurrence
3543     annule cependant la précédente (pour ce serveur).</p>
3544
3545     <p>Si la directive <code class="directive">ServerName</code> n'est pas
3546     définie, le serveur tente de déterminer le nom d'hôte en effectuant
3547     une recherche DNS inverse sur son adresse IP. Si la directive
3548     <code class="directive">ServerName</code> ne précise pas de port, le serveur
3549     utilisera celui de la requête entrante. Il est recommandé de
3550     spécifier un nom d'hôte et un port spécifiques à l'aide de la
3551     directive <code class="directive">ServerName</code> pour une fiabilité
3552     optimale et à titre préventif.</p>
3553
3554     <p>Si vous définissez des <a href="../vhosts/name-based.html">serveurs virtuels à base de
3555     nom</a>, une directive <code class="directive">ServerName</code> située à
3556     l'intérieur d'une section <code class="directive"><a href="#virtualhost">&lt;VirtualHost&gt;</a></code> spécifiera quel nom d'hôte
3557     doit apparaître dans l'en-tête de requête <code>Host:</code> pour
3558     pouvoir atteindre ce serveur virtuel.</p>
3559
3560
3561     <p>Parfois, le serveur s'exécute en amont d'un dispositif qui
3562     implémente SSL, comme un mandataire inverse, un répartiteur de
3563     charge ou un boîtier dédié SSL. Dans ce cas, spécifiez le protocole
3564     <code>https://</code> et le port auquel les clients se connectent
3565     dans la directive <code class="directive">ServerName</code>, afin de
3566     s'assurer que le serveur génère correctement ses URLs
3567     d'auto-identification.
3568     </p>
3569
3570     <p>Voir la description des directives <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> et <code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code> pour les
3571     définitions qui permettent de déterminer si les URLs
3572     auto-identifiantes (par exemple via le module
3573     <code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code>) vont faire référence au port spécifié, ou
3574     au port indiqué dans la requête du client.
3575     </p>
3576
3577     <div class="warning">
3578     <p>Si la valeur de la directive <code class="directive">ServerName</code> ne
3579     peut pas être résolue en adresse IP, le démarrage du serveur
3580     provoquera un avertissement. <code>httpd</code> va alors utiliser le
3581     résultat de la commande système <code>hostname</code> pour
3582     déterminer le nom du serveur, ce qui ne correspondra pratiquement
3583     jamais au nom de serveur que vous souhaitez réellement.</p>
3584     <div class="example"><p><code>
3585     httpd: Could not reliably determine the server's fully qualified domain name, using rocinante.local for ServerName
3586     </code></p></div>
3587     </div>
3588
3589
3590 <h3>Voir aussi</h3>
3591 <ul>
3592 <li><a href="../dns-caveats.html">Problèmes concernant le DNS et
3593 le serveur HTTP Apache</a></li>
3594 <li><a href="../vhosts/">Documentation sur les serveurs virtuels
3595 du serveur HTTP Apache</a></li>
3596 <li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
3597 <li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li>
3598 <li><code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code></li>
3599 <li><code class="directive"><a href="#serveralias">ServerAlias</a></code></li>
3600 </ul>
3601 </div>
3602 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3603 <div class="directive-section"><h2><a name="ServerPath" id="ServerPath">ServerPath</a> <a name="serverpath" id="serverpath">Directive</a></h2>
3604 <table class="directive">
3605 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nom de chemin d'URL hérité pour un serveur virtuel à base
3606 de nom accédé par un navigateur incompatible</td></tr>
3607 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerPath <var>chemin d'URL</var></code></td></tr>
3608 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>serveur virtuel</td></tr>
3609 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3610 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3611 </table>
3612     <p>La directive <code class="directive">ServerPath</code> permet de définir
3613     le nom de chemin d'URL hérité d'un hôte, à utiliser avec les <a href="../vhosts/">serveurs virtuels à base de nom</a>.</p>
3614
3615 <h3>Voir aussi</h3>
3616 <ul>
3617 <li><a href="../vhosts/">Documentation sur les serveurs virtuels
3618 du serveur HTTP Apache</a></li>
3619 </ul>
3620 </div>
3621 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3622 <div class="directive-section"><h2><a name="ServerRoot" id="ServerRoot">ServerRoot</a> <a name="serverroot" id="serverroot">Directive</a></h2>
3623 <table class="directive">
3624 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Racine du répertoire d'installation du
3625 serveur</td></tr>
3626 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerRoot <var>chemin de répertoire</var></code></td></tr>
3627 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ServerRoot /usr/local/apache</code></td></tr>
3628 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
3629 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3630 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3631 </table>
3632     <p>La directive <code class="directive">ServerRoot</code> permet de définir
3633     le répertoire dans lequel le serveur est installé. En particulier,
3634     il contiendra les sous-répertoires <code>conf/</code> et
3635     <code>logs/</code>. Les chemins relatifs indiqués dans les autres
3636     directives (comme <code class="directive"><a href="#include">Include</a></code> ou <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>) seront définis par
3637     rapport à ce répertoire.</p>
3638
3639     <div class="example"><h3>Example</h3><p><code>
3640       ServerRoot /home/httpd
3641     </code></p></div>
3642
3643
3644 <h3>Voir aussi</h3>
3645 <ul>
3646 <li><a href="../invoking.html">the <code>-d</code>
3647     options de <code>httpd</code></a></li>
3648 <li><a href="../misc/security_tips.html#serverroot">les conseils à
3649 propos de sécurité</a> pour des informations sur la manière de définir
3650 correctement les permissions sur le répertoire indiqué par la directive
3651 <code class="directive">ServerRoot</code></li>
3652 </ul>
3653 </div>
3654 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3655 <div class="directive-section"><h2><a name="ServerSignature" id="ServerSignature">ServerSignature</a> <a name="serversignature" id="serversignature">Directive</a></h2>
3656 <table class="directive">
3657 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit un pied de page pour les documents générés par le
3658 serveur</td></tr>
3659 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerSignature On|Off|EMail</code></td></tr>
3660 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ServerSignature Off</code></td></tr>
3661 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3662 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>All</td></tr>
3663 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3664 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3665 </table>
3666     <p>La directive <code class="directive">ServerSignature</code> permet de
3667     définir une ligne de pied de page fixe pour les documents générés
3668     par le serveur (messages d'erreur, listings de répertoires ftp de
3669     <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>, sorties de <code class="module"><a href="../mod/mod_info.html">mod_info</a></code>,
3670     etc...). Dans le cas d'une chaîne de mandataires, l'utilisateur n'a
3671     souvent aucun moyen de déterminer lequel des mandataires chaînés a
3672     généré un message d'erreur, et c'est une des raisons pour lesquelles
3673     on peut être amené à ajouter un tel pied de page.</p>
3674
3675     <p>La valeur par défaut <code>Off</code> supprime la ligne de pied
3676     de page (et est ainsi compatible avec le comportement des
3677     versions 1.2 et antérieures d'Apache). la valeur <code>On</code>
3678     ajoute simplement une ligne contenant le numéro de version du
3679     serveur ainsi que le nom du serveur virtuel issu de la directive
3680     <code class="directive"><a href="#servername">ServerName</a></code>, alors que la valeur
3681     <code>EMail</code> ajoute en plus une référence "mailto:" à
3682     l'administrateur du document référencé issu la directive
3683     <code class="directive"><a href="#serveradmin">ServerAdmin</a></code>.</p>
3684
3685     <p>Après la version 2.0.44, les détails à propos du numéro de
3686     version du serveur sont contrôlés à l'aide de la directive
3687     <code class="directive"><a href="#servertokens">ServerTokens</a></code>.</p>
3688
3689 <h3>Voir aussi</h3>
3690 <ul>
3691 <li><code class="directive"><a href="#servertokens">ServerTokens</a></code></li>
3692 </ul>
3693 </div>
3694 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3695 <div class="directive-section"><h2><a name="ServerTokens" id="ServerTokens">ServerTokens</a> <a name="servertokens" id="servertokens">Directive</a></h2>
3696 <table class="directive">
3697 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure l'en-tête <code>Server</code> de la réponse
3698 HTTP</td></tr>
3699 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerTokens Major|Minor|Min[imal]|Prod[uctOnly]|OS|Full</code></td></tr>
3700 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ServerTokens Full</code></td></tr>
3701 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
3702 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3703 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3704 </table>
3705     <p>Cette directive permet de contrôler le contenu de l'en-tête
3706     <code>Server</code> inclus dans la réponse envoyée au client : cet
3707     en-tête peut contenir le type de système d'exploitation du serveur,
3708     ainsi que des informations à propos des modules compilés avec le
3709     serveur.</p>
3710
3711     <dl>
3712         <dt><code>ServerTokens Full</code> (ou non spécifié)</dt>
3713
3714         <dd>Le serveur envoie par exemple : <code>Server: Apache/2.4.1
3715         (Unix) PHP/4.2.2 MyMod/1.2</code></dd>
3716
3717         
3718
3719
3720       <dt><code>ServerTokens Prod[uctOnly]</code></dt>
3721
3722       <dd>Le serveur renvoie (<em>par exemple</em>): <code>Server:
3723       Apache</code></dd>
3724
3725       <dt><code>ServerTokens Major</code></dt>
3726
3727       <dd>Le serveur renvoie (<em>par exemple</em>): <code>Server:
3728       Apache/2</code></dd>
3729
3730       <dt><code>ServerTokens Minor</code></dt>
3731
3732       <dd>Le serveur renvoie (<em>par exemple</em>): <code>Server:
3733       Apache/2.4</code></dd>
3734
3735       <dt><code>ServerTokens Min[imal]</code></dt>
3736
3737       <dd>Le serveur renvoie (<em>par exemple</em>): <code>Server:
3738       Apache/2.4.1</code></dd>
3739
3740       <dt><code>ServerTokens OS</code></dt>
3741
3742       <dd>Le serveur renvoie (<em>par exemple</em>): <code>Server:
3743       Apache/2.4.1 (Unix)</code></dd>
3744
3745       
3746       
3747     </dl>
3748
3749     <p>Cette définition s'applique à l'ensemble du serveur et ne peut
3750     être activée ou désactivée pour tel ou tel serveur virtuel.</p>
3751
3752     <p>Dans les versions postérieures à 2.0.44, cette directive contrôle
3753     aussi les informations fournies par la directive <code class="directive"><a href="#serversignature">ServerSignature</a></code>.</p>
3754
3755     <div class="note">Définir <code class="directive">ServerTokens</code> à une
3756     valeur inférieure à <code>minimal</code> n'est pas
3757     recommandé car le débogage des problèmes
3758     interopérationnels n'en sera alors que plus difficile. Notez
3759     aussi que la désactivation de l'en-tête Server:
3760     n'améliore en rien la sécurité de votre
3761     serveur ; le concept de "sécurité par
3762     l'obscurité" est un mythe et conduit à
3763     une mauvaise perception de ce qu'est la sécurité.</div>
3764
3765
3766
3767 <h3>Voir aussi</h3>
3768 <ul>
3769 <li><code class="directive"><a href="#serversignature">ServerSignature</a></code></li>
3770 </ul>
3771 </div>
3772 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3773 <div class="directive-section"><h2><a name="SetHandler" id="SetHandler">SetHandler</a> <a name="sethandler" id="sethandler">Directive</a></h2>
3774 <table class="directive">
3775 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Force le traitement des fichiers spécifiés par un
3776 gestionnaire particulier</td></tr>
3777 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SetHandler <var>nom gestionnaire</var>|None</code></td></tr>
3778 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3779 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
3780 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3781 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3782 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Intégré dans le noyau d'Apache httpd depuis la version
3783 2.0</td></tr>
3784 </table>
3785     <p>Lorsqu'elle se situe à l'intérieur d'un fichier
3786     <code>.htaccess</code>, ou d'une section <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> ou <code class="directive"><a href="#location">&lt;Location&gt;</a></code>, cette directive force le
3787     traitement de tous les fichiers spécifiés par le <a href="../handler.html">gestionnaire</a> défini par l'argument
3788     <var>nom gestionnaire</var>. Par exemple, dans le cas d'un
3789     répertoire dont vous voulez interpréter le contenu comme des
3790     fichiers de règles d'images cliquables, sans tenir compte des
3791     extensions, vous pouvez ajouter la ligne suivante dans un fichier
3792     <code>.htaccess</code> de ce répertoire :</p>
3793
3794     <div class="example"><p><code>
3795       SetHandler imap-file
3796     </code></p></div>
3797
3798     <p>Autre exemple : si vous voulez que le serveur affiche un
3799     compte-rendu d'état chaque fois qu'une URL du type <code>http://nom
3800     serveur/status</code> est appelée, vous pouvez ajouter ceci dans
3801     <code>httpd.conf</code> :</p>
3802
3803     <div class="example"><p><code>
3804       &lt;Location /status&gt;<br />
3805       <span class="indent">
3806         SetHandler server-status<br />
3807       </span>
3808       &lt;/Location&gt;
3809     </code></p></div>
3810
3811     <p>Vous pouvez écraser la définition antérieure d'une directive
3812     <code class="directive">SetHandler</code> en utilisant la valeur
3813     <code>None</code>.</p>
3814     <p><strong>Note :</strong> comme SetHandler l'emporte sur la
3815     définition des gestionnaires par défaut, le comportement habituel
3816     consistant à traiter les URLs se terminant par un slash (/) comme
3817     des répertoires ou des fichiers index est désactivé.</p>
3818
3819 <h3>Voir aussi</h3>
3820 <ul>
3821 <li><code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code></li>
3822 </ul>
3823 </div>
3824 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3825 <div class="directive-section"><h2><a name="SetInputFilter" id="SetInputFilter">SetInputFilter</a> <a name="setinputfilter" id="setinputfilter">Directive</a></h2>
3826 <table class="directive">
3827 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit les filtres par lesquels vont passer les requêtes
3828 client et les données POST</td></tr>
3829 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SetInputFilter <var>filtre</var>[;<var>filtre</var>...]</code></td></tr>
3830 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3831 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
3832 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3833 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3834 </table>
3835     <p>La directive <code class="directive">SetInputFilter</code> permet de
3836     définir le ou les filtres par lesquels vont passer les requêtes
3837     client et les données POST au moment où le serveur les reçoit. Cette
3838     définition vient en ajout à tout autre filtre défini en
3839     quelqu'endroit que ce soit, y compris via la directive <code class="directive"><a href="../mod/mod_mime.html#addinputfilter">AddInputFilter</a></code>.</p>
3840
3841     <p>Si la directive comporte plusieurs filtres, ils doivent être
3842     séparés par des points-virgules, et spécifiés selon l'ordre dans
3843     lequel vous souhaitez les voir agir sur les contenus.</p>
3844
3845 <h3>Voir aussi</h3>
3846 <ul>
3847 <li>documentation des <a href="../filter.html">Filtres</a></li>
3848 </ul>
3849 </div>
3850 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3851 <div class="directive-section"><h2><a name="SetOutputFilter" id="SetOutputFilter">SetOutputFilter</a> <a name="setoutputfilter" id="setoutputfilter">Directive</a></h2>
3852 <table class="directive">
3853 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit les filtres par lesquels vont passer les réponses
3854 du serveur</td></tr>
3855 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SetOutputFilter <var>filtre</var>[;<var>filtre</var>...]</code></td></tr>
3856 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
3857 <tr><th><a href="directive-dict.html#Override">Annuler:</a></th><td>FileInfo</td></tr>
3858 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3859 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3860 </table>
3861     <p>La directive <code class="directive">SetOutputFilter</code> permet de
3862     définir les filtres par lesquels vont passer les réponses du serveur
3863     avant d'être envoyées au client. Cette définition vient en ajout à
3864     tout autre filtre défini en quelqu'endroit que ce soit, y compris
3865     via la directive <code class="directive"><a href="../mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>.</p>
3866
3867     <p>Par exemple, la configuration suivante va traiter tous les
3868     fichiers du répertoire <code>/www/data/</code> comme des inclusions
3869     côté serveur (SSI) :</p>
3870
3871     <div class="example"><p><code>
3872       &lt;Directory /www/data/&gt;<br />
3873       <span class="indent">
3874         SetOutputFilter INCLUDES<br />
3875       </span>
3876       &lt;/Directory&gt;
3877     </code></p></div>
3878
3879     <p>Si la directive comporte plusieurs filtres, ils doivent être
3880     séparés par des points-virgules, et spécifiés selon l'ordre dans
3881     lequel vous souhaitez les voir agir sur les contenus.</p>
3882
3883 <h3>Voir aussi</h3>
3884 <ul>
3885 <li><a href="../filter.html">Filters</a> documentation</li>
3886 </ul>
3887 </div>
3888 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3889 <div class="directive-section"><h2><a name="TimeOut" id="TimeOut">TimeOut</a> <a name="timeout" id="timeout">Directive</a></h2>
3890 <table class="directive">
3891 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Temps pendant lequel le serveur va attendre certains
3892 évènements avant de considérer qu'une requête a échoué</td></tr>
3893 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>TimeOut <var>secondes</var></code></td></tr>
3894 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>TimeOut 300</code></td></tr>
3895 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
3896 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3897 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3898 </table>
3899     <p>La directive <code class="directive">TimeOut</code> permet de définir le
3900     temps maximum pendant lequel Apache httpd va attendre des entrées/sorties
3901     selon les circonstances :</p>
3902
3903     <ol>
3904       <li>Lors de la lecture de données en provenance du client, le
3905       temps maximum jusqu'à l'arrivée d'un paquet TCP si le tampon est
3906       vide.</li>
3907
3908       <li>Lors de l'écriture de données destinées au client, le temps
3909       maximum jusqu'à l'arrivée de l'accusé-réception d'un paquet si le
3910       tampon d'envoi est plein.</li>
3911
3912       <li>Avec <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>, le temps d'attente maximum des
3913       sorties d'un script CGI.</li>
3914
3915       <li>Avec <code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code>, le temps d'attente
3916       maximum des sorties d'un processus de filtrage.</li>
3917
3918       <li>Avec <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>, la valeur du délai par défaut
3919       si <code class="directive"><a href="../mod/mod_proxy.html#proxytimeout">ProxyTimeout</a></code> n'est
3920       pas défini.</li>
3921     </ol>
3922
3923
3924 </div>
3925 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3926 <div class="directive-section"><h2><a name="TraceEnable" id="TraceEnable">TraceEnable</a> <a name="traceenable" id="traceenable">Directive</a></h2>
3927 <table class="directive">
3928 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Détermine le comportement des requêtes
3929 <code>TRACE</code></td></tr>
3930 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>TraceEnable <var>[on|off|extended]</var></code></td></tr>
3931 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>TraceEnable on</code></td></tr>
3932 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
3933 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3934 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3935 <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible dans les versions 1.3.34, 2.0.55 et
3936 supérieures du serveur HTTP Apache</td></tr>
3937 </table>
3938     <p>Cette directive l'emporte sur le comportement de
3939     <code>TRACE</code> pour le noyau du serveur et
3940     <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>. La définition par défaut
3941     <code>TraceEnable on</code> permet des requêtes <code>TRACE</code>
3942     selon la RFC 2616, qui interdit d'ajouter tout corps à la requête.
3943     La définition <code>TraceEnable off</code> indique au noyau du
3944     serveur et à <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> de retourner un code
3945     d'erreur <code>405</code> (Méthode non autorisée) au client.</p>
3946
3947     <p>En fait, et à des fins de test et de diagnostic seulement, on
3948     peut autoriser l'ajout d'un corps de requête à l'aide de la
3949     définition non standard <code>TraceEnable extended</code>. Le noyau
3950     du serveur (dans le cas d'un serveur d'origine) va limiter la taille
3951     du corps de requête à 64k (plus 8k pour les en-têtes de
3952     fractionnement si <code>Transfer-Encoding: chunked</code> est
3953     utilisé). Le noyau du serveur va reproduire l'ensemble des en-têtes,
3954     y compris les en-têtes de fractionnement avec le corps de la
3955     réponse. Dans le cas d'un serveur mandataire, la taille du corps de
3956     requête n'est pas limitée à 64k.</p>
3957
3958 </div>
3959 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3960 <div class="directive-section"><h2><a name="UnDefine" id="UnDefine">UnDefine</a> <a name="undefine" id="undefine">Directive</a></h2>
3961 <table class="directive">
3962 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Invalide la définition d'une variable</td></tr>
3963 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>UnDefine <var>nom-variable</var></code></td></tr>
3964 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
3965 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3966 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3967 </table>
3968     <p>Annule l'effet d'une directive <code class="directive"><a href="#define">Define</a></code> ou d'un argument <code>-D</code> de
3969     <code class="program"><a href="../programs/httpd.html">httpd</a></code> en invalidant l'existence de la variable
3970     correspondante.</p>
3971     <p>On peut utiliser cette directive pour inverser l'effet d'une
3972     section <code class="directive"><a href="#ifdefine">&lt;IfDefine&gt;</a></code>
3973     sans avoir à modifier les arguments <code>-D</code> dans les scripts
3974     de démarrage.</p>
3975
3976 </div>
3977 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
3978 <div class="directive-section"><h2><a name="UseCanonicalName" id="UseCanonicalName">UseCanonicalName</a> <a name="usecanonicalname" id="usecanonicalname">Directive</a></h2>
3979 <table class="directive">
3980 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit la manière dont le serveur détermine son propre nom
3981 et son port</td></tr>
3982 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>UseCanonicalName On|Off|DNS</code></td></tr>
3983 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>UseCanonicalName Off</code></td></tr>
3984 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire</td></tr>
3985 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
3986 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
3987 </table>
3988     <p>Dans de nombreuses situations, Apache httpd doit construire une URL
3989     <em>auto-identifiante</em> -- c'est à dire une URL qui fait
3990     référence au serveur lui-même. Avec <code>UseCanonicalName
3991     On</code>, Apache httpd va utiliser le nom d'hôte et le port spécifiés par
3992     la directive <code class="directive"><a href="#servername">ServerName</a></code> pour
3993     construire le nom canonique du serveur. Ce nom est utilisé dans
3994     toutes les URLs auto-identifiantes, et affecté aux variables
3995     <code>SERVER_NAME</code> et <code>SERVER_PORT</code> dans les
3996     programmes CGI.</p>
3997
3998     <p>Avec <code>UseCanonicalName Off</code>, Apache httpd va construire ses
3999     URLs auto-identifiantes à l'aide du nom d'hôte et du port fournis
4000     par le client, si ce dernier en a fourni un (dans la négative,
4001     Apache utilisera le nom canonique, de la même manière que
4002     ci-dessus). Ces valeurs sont les mêmes que celles qui sont utilisées
4003     pour implémenter les <a href="../vhosts/name-based.html">serveurs virtuels à base de
4004     nom</a>, et sont disponibles avec les mêmes clients. De même, les
4005     variables CGI <code>SERVER_NAME</code> et <code>SERVER_PORT</code>
4006     seront affectées des valeurs fournies par le client.</p>
4007
4008     <p>Cette directive peut s'avérer utile, par exemple, sur un serveur
4009     intranet auquel les utilisateurs se connectent en utilisant des noms
4010     courts tels que <code>www</code>. Si les utilisateurs tapent un nom
4011     court suivi d'une URL qui fait référence à un répertoire, comme
4012     <code>http://www/splat</code>, <em>sans le slash terminal</em>, vous
4013     remarquerez qu'Apache httpd va les rediriger vers
4014     <code>http://www.domain.com/splat/</code>. Si vous avez activé
4015     l'authentification, ceci va obliger l'utilisateur à s'authentifier
4016     deux fois (une première fois pour <code>www</code> et une seconde
4017     fois pour <code>www.domain.com</code> -- voir <a href="http://httpd.apache.org/docs/misc/FAQ.html#prompted-twice">la
4018     foire aux questions sur ce sujet pour plus d'informations</a>). Par
4019     contre, si <code class="directive">UseCanonicalName</code> est définie à
4020     <code>Off</code>, Apache httpd redirigera l'utilisateur vers
4021     <code>http://www/splat/</code>.</p>
4022
4023     <p>Pour l'hébergement virtuel en masse à base d'adresse IP, on
4024     utilise une troisième option, <code>UseCanonicalName
4025     DNS</code>, pour supporter les clients anciens qui ne
4026     fournissent pas d'en-tête <code>Host:</code>. Apache httpd effectue alors
4027     une recherche DNS inverse sur l'adresse IP du serveur auquel le
4028     client s'est connecté afin de construire ses URLs
4029     auto-identifiantes.</p>
4030
4031     <div class="warning"><h3>Avertissement</h3>
4032     <p>Les programmes CGI risquent d'être perturbés par cette option
4033     s'ils tiennent compte de la variable <code>SERVER_NAME</code>. Le
4034     client est pratiquement libre de fournir la valeur qu'il veut comme
4035     nom d'hôte. Mais si le programme CGI n'utilise
4036     <code>SERVER_NAME</code> que pour construire des URLs
4037     auto-identifiantes, il ne devrait pas y avoir de problème.</p>
4038     </div>
4039
4040 <h3>Voir aussi</h3>
4041 <ul>
4042 <li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li>
4043 <li><code class="directive"><a href="#servername">ServerName</a></code></li>
4044 <li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li>
4045 </ul>
4046 </div>
4047 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
4048 <div class="directive-section"><h2><a name="UseCanonicalPhysicalPort" id="UseCanonicalPhysicalPort">UseCanonicalPhysicalPort</a> <a name="usecanonicalphysicalport" id="usecanonicalphysicalport">Directive</a></h2>
4049 <table class="directive">
4050 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit la manière dont le serveur détermine son propre nom
4051 et son port</td></tr>
4052 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>UseCanonicalPhysicalPort On|Off</code></td></tr>
4053 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>UseCanonicalPhysicalPort Off</code></td></tr>
4054 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire</td></tr>
4055 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
4056 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
4057 </table>
4058     <p>Dans de nombreuses situations, Apache httpd doit construire une URL
4059     <em>auto-identifiante</em> -- c'est à dire une URL qui fait
4060     référence au serveur lui-même. Avec <code>UseCanonicalPhysicalPort
4061     On</code>, Apache httpd va fournir le numéro de port physique réel utilisé
4062     par la requête en tant que port potentiel, pour construire le port
4063     canonique afin que le serveur puisse alimenter la directive
4064     <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code>. Avec
4065     <code>UseCanonicalPhysicalPort Off</code>, Apache httpd n'utilisera pas le
4066     numéro de port physique réel, mais au contraire se référera aux
4067     informations de configuration pour construire un numéro de port
4068     valide.</p>
4069
4070     <div class="note"><h3>Note</h3>
4071     <p>L'ordre dans lequel s'effectue la recherche du port est le
4072     suivant :<br /><br />
4073      <code>UseCanonicalName On</code></p>
4074      <ul>
4075       <li>Port spécifié par <code>Servername</code></li>
4076       <li>Port physique</li>
4077       <li>Port par défaut</li>
4078      </ul>
4079      <code>UseCanonicalName Off | DNS</code>
4080      <ul>
4081       <li>Port spécifié dans l'en-tête <code>Host:</code></li>
4082       <li>Port physique</li>
4083       <li>Port spécifié par <code>Servername</code></li>
4084       <li>Port par défaut</li>
4085      </ul>
4086
4087     <p>Avec <code>UseCanonicalPhysicalPort Off</code>, on reprend
4088     l'ordre ci-dessus en supprimant "Port physique".</p>
4089     </div>
4090
4091
4092 <h3>Voir aussi</h3>
4093 <ul>
4094 <li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
4095 <li><code class="directive"><a href="#servername">ServerName</a></code></li>
4096 <li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li>
4097 </ul>
4098 </div>
4099 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
4100 <div class="directive-section"><h2><a name="VirtualHost" id="VirtualHost">&lt;VirtualHost&gt;</a> <a name="virtualhost" id="virtualhost">Directive</a></h2>
4101 <table class="directive">
4102 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contient des directives qui ne s'appliquent qu'à un nom
4103 d'hôte spécifique ou à une adresse IP</td></tr>
4104 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>&lt;VirtualHost
4105     <var>adresse IP</var>[:<var>port</var>] [<var>adresse
4106     IP</var>[:<var>port</var>]] ...&gt; ...
4107     &lt;/VirtualHost&gt;</code></td></tr>
4108 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
4109 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Core</td></tr>
4110 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
4111 </table>
4112     <p>Les balises <code class="directive">&lt;VirtualHost&gt;</code> et
4113     <code>&lt;/VirtualHost&gt;</code> permettent de rassembler un groupe
4114     de directives qui ne s'appliquent qu'à un serveur virtuel
4115     particulier. Toute directive autorisée dans un contexte de serveur
4116     virtuel peut être utilisée. Lorsque le serveur reçoit un requête
4117     pour un document hébergé par un serveur virtuel particulier, il
4118     applique les directives de configuration rassemblées dans la section
4119     <code class="directive">&lt;VirtualHost&gt;</code>. <var>adresse
4120     IP</var> peut être :</p>
4121
4122     <ul>
4123       <li>L'adresse IP du serveur virtuel ;</li>
4124
4125       <li>Un nom de domaine entièrement qualifié correspondant à
4126       l'adresse IP du serveur virtuel (non recommandé) ;</li>
4127
4128       <li>Le caractère <code>*</code>, qui n'est utilisé qu'en
4129       combinaison avec <code>NameVirtualHost *</code> pour intercepter
4130       toutes les adresses IP ; ou</li>
4131
4132       <li>La chaîne de caractères <code>_default_</code>, qui n'est
4133       utilisée qu'avec l'hébergement virtuel à base d'adresse IP pour
4134       intercepter les adresses IP qui ne correspondent à aucun serveur
4135       virtuel.</li>
4136     </ul>
4137
4138     <div class="example"><h3>Exemple</h3><p><code>
4139       &lt;VirtualHost 10.1.2.3&gt;<br />
4140       <span class="indent">
4141         ServerAdmin webmaster@host.example.com<br />
4142         DocumentRoot /www/docs/host.example.com<br />
4143         ServerName host.example.com<br />
4144         ErrorLog logs/host.example.com-error_log<br />
4145         TransferLog logs/host.example.com-access_log<br />
4146       </span>
4147       &lt;/VirtualHost&gt;
4148     </code></p></div>
4149
4150
4151     <p>Les adresses IPv6 doivent être entourées de crochets car dans le
4152     cas contraire, un éventuel port optionnel ne pourrait pas être
4153     déterminé. Voici un exemple de serveur virtuel avec adresse IPv6
4154     :</p>
4155
4156     <div class="example"><p><code>
4157       &lt;VirtualHost [2001:db8::a00:20ff:fea7:ccea]&gt;<br />
4158       <span class="indent">
4159         ServerAdmin webmaster@host.example.com<br />
4160         DocumentRoot /www/docs/host.example.com<br />
4161         ServerName host.example.com<br />
4162         ErrorLog logs/host.example.com-error_log<br />
4163         TransferLog logs/host.example.com-access_log<br />
4164       </span>
4165       &lt;/VirtualHost&gt;
4166     </code></p></div>
4167
4168     <p>Chaque serveur virtuel doit correspondre à une adresse IP, un
4169     port ou un nom d'hôte spécifique ; dans le premier cas, le serveur
4170     doit être configuré pour recevoir les paquets IP de plusieurs
4171     adresses (si le serveur n'a qu'une interface réseau, on peut
4172     utiliser à cet effet la commande <code>ifconfig alias</code> -- si
4173     votre système d'exploitation le permet).</p>
4174
4175     <div class="note"><h3>Note</h3>
4176     <p>L'utilisation de la directive <code class="directive">&lt;VirtualHost&gt;</code> n'affecte en rien les
4177     adresses IP sur lesquelles Apache httpd est en écoute. Vous devez vous
4178     assurer que les adresses des serveurs virtuels sont bien incluses
4179     dans la liste des adresses précisées par la directive <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code>.</p>
4180     </div>
4181
4182     <p>Avec l'hébergement virtuel à base d'adresse IP, on peut utiliser
4183     le nom spécial <code>_default_</code>, auquel cas le serveur virtuel
4184     considéré interceptera toute adresse IP qui n'est pas explicitement
4185     associée à un autre serveur virtuel. En l'absence de serveur virtuel
4186     associé à <code>_default_</code>, et si l'adresse IP demandée ne
4187     correspond à aucun serveur virtuel, c'est la configuration du
4188     serveur "principal" qui sera utilisée, c'est à dire l'ensemble des
4189     définitions situées en dehors de toute section VirtualHost.</p>
4190
4191     <p>Vous pouvez spécifier <code>:port</code> pour modifier le port du
4192     serveur virtuel. S'il n'est pas spécifié, sa valeur par défaut
4193     correspond à celle qui est définie par la dernière directive
4194     <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code> du serveur
4195     principal. Vous pouvez aussi spécifier <code>:*</code> pour accepter
4196     tous les ports associés à l'adresse du serveur virtuel (c'est une
4197     configuration recommandée lorsqu'on utilise
4198     <code>_default_</code>).</p>
4199
4200     <p>Tout bloc <code class="directive">&lt;VirtualHost&gt;</code> doit comporter une directive
4201     <code class="directive"><a href="#servername">ServerName</a></code>. Dans le cas
4202     contraire, le serveur virtuel héritera de la valeur de la directive
4203     <code class="directive"><a href="#servername">ServerName</a></code> issue de la
4204     configuration du serveur principal.</p>
4205
4206     <p>Si aucun serveur virtuel ne correspond, c'est le premier serveur
4207     virtuel correspondant à l'adresse IP qui sera utilisé. Par
4208     conséquent, le premier serveur virtuel défini est le serveur virtuel
4209     par défaut.</p>
4210
4211     <div class="warning"><h3>Sécurité</h3>
4212     <p>Voir le document sur les <a href="../misc/security_tips.html">conseils à propos de sécurité</a>
4213     pour une description détaillée des raisons pour lesquelles la
4214     sécurité de votre serveur pourrait être compromise, si le répertoire
4215     contenant les fichiers journaux est inscriptible par tout autre
4216     utilisateur que celui qui démarre le serveur.</p>
4217     </div>
4218
4219 <h3>Voir aussi</h3>
4220 <ul>
4221 <li><a href="../vhosts/">Documentation des serveurs virtuels
4222 du serveur HTTP Apache</a></li>
4223 <li><a href="../dns-caveats.html">Problèmes concernant le DNS et
4224 le serveur HTTP Apache</a></li>
4225 <li><a href="../bind.html">Définition des adresses et ports
4226 qu'utilise le serveur HTTP Apache</a></li>
4227 <li><a href="../sections.html">Comment fonctionnent les sections
4228 &lt;Directory&gt;, &lt;Location&gt; et &lt;Files&gt;</a> pour une
4229 explication de la manière dont ces différentes sections se combinent
4230 entre elles à la réception d'une requête</li>
4231 </ul>
4232 </div>
4233 </div>
4234 <div class="bottomlang">
4235 <p><span>Langues Disponibles: </span><a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
4236 <a href="../en/mod/core.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
4237 <a href="../fr/mod/core.html" title="Français">&nbsp;fr&nbsp;</a> |
4238 <a href="../ja/mod/core.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
4239 <a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
4240 </div><div id="footer">
4241 <p class="apache">Copyright 2010 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
4242 <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>
4243 </body></html>