]> granicus.if.org Git - apache/blob - docs/manual/mod/mpm_common.xml.fr
786600abc6ff35dee56e404fb7fde59a6b5a8c32
[apache] / docs / manual / mod / mpm_common.xml.fr
1 <?xml version="1.0"?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
4 <!-- English Revision: 1705612 -->
5 <!-- French translation : Lucien GENTIS -->
6 <!-- Reviewed by : Vincent Deffontaines -->
7
8 <!--
9  Licensed to the Apache Software Foundation (ASF) under one or more
10  contributor license agreements.  See the NOTICE file distributed with
11  this work for additional information regarding copyright ownership.
12  The ASF licenses this file to You under the Apache License, Version 2.0
13  (the "License"); you may not use this file except in compliance with
14  the License.  You may obtain a copy of the License at
15
16      http://www.apache.org/licenses/LICENSE-2.0
17
18  Unless required by applicable law or agreed to in writing, software
19  distributed under the License is distributed on an "AS IS" BASIS,
20  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  See the License for the specific language governing permissions and
22  limitations under the License.
23 -->
24
25 <modulesynopsis metafile="mpm_common.xml.meta">
26
27 <name>mpm_common</name>
28 <description>Une s&eacute;rie de directives impl&eacute;ment&eacute;es par plusieurs
29 modules multi-processus (MPM)</description>
30 <status>MPM</status>
31
32 <directivesynopsis>
33 <name>CoreDumpDirectory</name>
34 <description>Le r&eacute;pertoire dans lequel le serveur HTTP Apache va tenter de se
35 positionner avant d'effectuer un vidage m&eacute;moire</description>
36 <syntax>CoreDumpDirectory <var>r&eacute;pertoire</var></syntax>
37 <default>Voir ci-dessous pour le r&eacute;pertoire par d&eacute;faut</default>
38 <contextlist><context>server config</context></contextlist>
39 <modulelist><module>event</module><module>prefork</module>
40 <module>worker</module></modulelist>
41
42 <usage>
43     <p>Cette directive permet de d&eacute;finir le r&eacute;pertoire dans lequel
44     Apache httpd va tenter de se positionner avant d'effectuer un vidage
45     m&eacute;moire sur disque.
46     Si votre syst&egrave;me d'exploitation est configur&eacute; pour cr&eacute;er des
47     fichiers de vidage m&eacute;moire dans le r&eacute;pertoire de travail des
48     processus qui se sont crash&eacute;s,
49     <directive>CoreDumpDirectory</directive> est n&eacute;cessaire pour
50     d&eacute;finir un r&eacute;pertoire de travail autre que le r&eacute;pertoire par d&eacute;faut
51     <directive module="core">ServerRoot</directive>, ce r&eacute;pertoire de
52     travail ne devant pas &ecirc;tre accessible en &eacute;criture par l'utilisateur sous
53     lequel le serveur s'ex&eacute;cute.</p>
54
55     <p>Si vous avez besoin d'un vidage m&eacute;moire pour le d&eacute;bogage, vous
56     pouvez utiliser cette directive pour le placer &agrave; un endroit
57     diff&eacute;rent. Cette directive n'a aucun effet si votre syst&egrave;me
58     d'exploitation n'est pas configur&eacute; pour cr&eacute;er des
59     fichiers de vidage m&eacute;moire dans le r&eacute;pertoire de travail des
60     processus qui se sont crash&eacute;s.</p>
61
62     <note><title>Vidages m&eacute;moire sous Linux</title>
63       <p>Si Apache httpd est d&eacute;marr&eacute; sous l'utilisateur root puis bascule vers
64       un autre utilisateur, le noyau Linux <em>d&eacute;sactive</em> les
65       vidages m&eacute;moire, m&ecirc;me si le r&eacute;pertoire est accessible en &eacute;criture au
66       processus. Apache httpd (versions 2.0.46 et sup&eacute;rieures) r&eacute;active les
67       vidages m&eacute;moire sous Linux 2.4 et au del&agrave;, mais seulement si vous
68       d&eacute;finissez une directive <directive>CoreDumpDirectory</directive>.</p>
69     </note>
70
71     <note>
72     <title>Vidages m&eacute;moire sous BSD</title>
73     <p>Pour activer le vidage m&eacute;moire des ex&eacute;cutables suid sur les
74     syst&egrave;mes de style BSD (comme FreeBSD), d&eacute;finissez
75     <code>kern.sugid_coredump</code> &agrave; 1.
76     </p>
77     </note>
78
79     <note><title>Signaux sp&eacute;cifiques</title>
80       <p><directive>CoreDumpDirectory</directive> n'est trait&eacute; qu'&agrave; la
81       reception d'un certain nombre de signaux , SIGFPE, SIGILL, SIGABORT,
82       SIGSEGV, et SIGBUS.</p>
83       <p>
84       Sur certains syst&egrave;mes d'exploitation, SIGQUIT provoque aussi un
85       vidage m&eacute;moire, mais n'est pas trait&eacute; par les directives
86       <directive>CoreDumpDirectory</directive> ou
87       <directive>EnableExceptionHook</directive>, si bien que la
88       d&eacute;finition du r&eacute;pertoire d'enregistrement du vidage m&eacute;moire est
89       enti&egrave;rement d&eacute;volue au syst&egrave;me d'exploitation.</p>
90     </note>
91 </usage>
92 </directivesynopsis>
93
94 <directivesynopsis>
95 <name>EnableExceptionHook</name>
96 <description>Active un hook ("point d'accrochage logiciel") qui ex&eacute;cute des
97 gestionnaires d'exception apr&egrave;s un crash</description>
98 <syntax>EnableExceptionHook On|Off</syntax>
99 <default>EnableExceptionHook Off</default>
100 <contextlist><context>server config</context></contextlist>
101 <modulelist>
102 <module>event</module><module>prefork</module>
103 <module>worker</module></modulelist>
104
105 <usage>
106     <p>Pour des raisons de s&eacute;curit&eacute;, cette directive n'est disponible
107     que si la compilation du serveur a &eacute;t&eacute; configur&eacute;e avec l'option
108     <code>--enable-exception-hook</code>. Elle permet d'activer un hook
109     ("point d'accrochage logiciel")
110     qui autorise certains modules externes &agrave; effectuer un branchement et
111     accomplir telle ou telle action apr&egrave;s le crash d'un processus
112     enfant.</p>
113
114     <p>Deux modules, <code>mod_whatkilledus</code> et
115     <code>mod_backtrace</code> utilisent ce hook. Veuillez vous
116     r&eacute;f&eacute;rer &agrave; la <a
117     href="http://people.apache.org/~trawick/exception_hook.html"
118     >page EnableExceptionHook</a> de Jeff Trawick pour plus
119     d'informations &agrave; leur sujet.</p>
120 </usage>
121 </directivesynopsis>
122
123 <directivesynopsis>
124 <name>GracefulShutdownTimeout</name>
125 <description>Sp&eacute;cifie le d&eacute;lai maximum apr&egrave;s lequel le serveur va
126 s'arr&ecirc;ter dans le cas d'un arr&ecirc;t "en douceur"</description>
127 <syntax>GracefulShutdownTimeout <var>seconds</var></syntax>
128 <default>GracefulShutdownTimeout 0</default>
129 <contextlist><context>server config</context></contextlist>
130 <modulelist><module>prefork</module><module>worker</module>
131 <module>event</module></modulelist>
132 <compatibility>Disponible dans les versions 2.2 et sup&eacute;rieures</compatibility>
133
134 <usage>
135     <p>La directive <directive>GracefulShutdownTimeout</directive>
136     permet de sp&eacute;cifier le temps, en secondes, pendant lequel le serveur
137     va continuer &agrave; fonctionner apr&egrave;s avoir re&ccedil;u un signal
138     "graceful-stop" ("Arr&ecirc;t en douceur"), afin de terminer le traitement
139     des connexions en cours.</p>
140
141     <p>D&eacute;finir cette valeur &agrave; z&eacute;ro signifie au serveur d'attendre
142     jusqu'&agrave; ce que toutes les requ&ecirc;tes en cours aient &eacute;t&eacute; trait&eacute;es.</p>
143 </usage>
144 </directivesynopsis>
145
146 <directivesynopsis>
147 <name>PidFile</name>
148 <description>Ficher dans lequel le serveur enregistre l'identificateur
149 de processus du d&eacute;mon</description>
150 <syntax>PidFile <var>nom fichier</var></syntax>
151 <default>PidFile logs/httpd.pid</default>
152 <contextlist><context>server config</context></contextlist>
153 <modulelist><module>event</module><module>mpm_winnt</module>
154 <module>mpmt_os2</module><module>prefork</module><module>worker</module>
155 </modulelist>
156
157 <usage>
158     <p>La directive <directive>PidFile</directive> permet de d&eacute;finir le
159     ficher dans lequel le serveur
160     enregistre l'identificateur de processus du d&eacute;mon. Si le chemin du
161     fichier n'est pas absolu, il est consid&eacute;r&eacute; comme relatif au chemin
162     d&eacute;fini par la directive <directive
163     module="core">ServerRoot</directive>.</p>
164
165     <example><title>Exemple</title>
166     <highlight language="config">
167       PidFile /var/run/apache.pid
168       </highlight>
169     </example>
170
171     <p>Il est souvent utile de pouvoir envoyer un signal au
172     serveur afin qu'il ferme et ouvre &agrave; nouveau ses journaux
173     d'<directive module="core">erreur</directive> et de <directive
174     module="mod_log_config">transfert</directive>, et recharge son
175     fichier de configuration. Pour ce faire, on envoie un signal SIGHUP
176     (kill -1) &agrave; l'identificateur de processus enregistr&eacute; dans le fichier
177     d&eacute;fini par la directive <directive>PidFile</directive>.</p>
178
179     <p>La directive <directive>PidFile</directive> fait l'objet des
180     m&ecirc;mes avertissements que ceux concernant le chemin d'enregistrement
181     des fichiers journaux et la <a
182     href="../misc/security_tips.html#serverroot">s&eacute;curit&eacute;</a>.</p>
183
184     <note><title>Note</title>
185       <p>Depuis la version 2 du serveur HTTP Apache, nous recommandons de n'utiliser
186       que le script <program>apachectl</program>, ou le script de
187       d&eacute;marrage fourni avec votre syst&egrave;me d'exploitation pour (re)d&eacute;marrer ou
188       arr&ecirc;ter le serveur.</p>
189     </note>
190 </usage>
191 </directivesynopsis>
192
193 <directivesynopsis>
194 <name>Listen</name>
195 <description>Les adresses IP et ports sur lesquels le serveur &eacute;coute</description>
196 <syntax>Listen [<var>adresse IP</var>:]<var>num&eacute;ro port</var>
197 [<var>protocole</var>]</syntax>
198 <contextlist><context>server config</context></contextlist>
199 <modulelist><module>mpm_netware</module><module>mpm_winnt</module>
200 <module>mpmt_os2</module>
201 <module>prefork</module><module>worker</module>
202 <module>event</module>
203 </modulelist>
204 <compatibility>L'argument <var>protocole</var> est support&eacute; depuis la version
205 2.1.5</compatibility>
206
207 <usage>
208     <p>La directive <directive>Listen</directive> permet de signifier &agrave;
209     Apache httpd de ne se mettre &agrave; l'&eacute;coute que sur les adresses IP et ports sp&eacute;cifi&eacute;s ; par
210     d&eacute;faut, le serveur r&eacute;pond aux requ&ecirc;tes en provenance de toutes les
211     interfaces r&eacute;seau. La directive <directive>Listen</directive> est
212     dor&eacute;navant requise, et si elle est absente du fichier de
213     configuration, le serveur refusera de d&eacute;marrer. Ceci constitue un
214     changement par rapport aux versions pr&eacute;c&eacute;dentes d'Apache httpd.</p>
215
216     <p>La directive <directive>Listen</directive> signifie au serveur de
217     n'accepter les requ&ecirc;tes entrantes que vers le port ou le couple
218     adresse-port sp&eacute;cifi&eacute;. Si seulement un port est sp&eacute;cifi&eacute;, le serveur
219     se met &agrave; l'&eacute;coute sur ce port sur toutes les interfaces r&eacute;seau. Si une adresse IP
220     et un port sont sp&eacute;cifi&eacute;s, le serveur va se mettre &agrave; l'&eacute;coute sur ce port sur
221     l'interface r&eacute;seau correspondant &agrave; l'adresse IP.</p>
222
223     <p>On peut utiliser autant de directives
224     <directive>Listen</directive> que n&eacute;cessaire pour sp&eacute;cifier
225     plusieurs adresses et/ou ports &agrave; &eacute;couter. Le serveur r&eacute;pondra aux
226     requ&ecirc;tes vers tous les adresses et ports sp&eacute;cifi&eacute;s.</p>
227
228     <p>Par exemple, pour que le serveur accepte les connexions sur les
229     ports 80 et 8000, utilisez :</p>
230
231     <highlight language="config">
232 Listen 80
233 Listen 8000
234     </highlight>
235
236     <p>Pour que le serveur accepte les connexions sur deux interfaces et
237     ports particuliers, sp&eacute;cifiez :</p>
238
239     <highlight language="config">
240 Listen 192.170.2.1:80
241 Listen 192.170.2.5:8000
242     </highlight>
243
244     <p>Les adressee IPv6 doivent &ecirc;tre entour&eacute;es de crochets, comme dans
245     l'exemple suivant :</p>
246
247     <highlight language="config">
248       Listen [2001:db8::a00:20ff:fea7:ccea]:80
249     </highlight>
250
251     <p>L'argument optionnel <var>protocole</var> n'est pas n&eacute;cessaire
252     dans la plupart des configurations. S'il est absent,
253     <code>https</code> est la valeur par d&eacute;faut pour le port 443 et
254     <code>http</code> l'est pour tous les autres ports. L'argument
255     protocole sert &agrave; d&eacute;terminer quel module doit traiter une requ&ecirc;te, et
256     &agrave; appliquer des optimisations sp&eacute;cifiques &agrave; certains protocoles &agrave;
257     l'aide de la directive <directive
258     module="core">AcceptFilter</directive>.</p>
259
260     <p>La sp&eacute;cification d'un protocole n'est n&eacute;cessaire que si vous
261     utilisez des ports non standards. Par exemple, pour configurer un
262     site en <code>https</code> sur le port 8443 :</p>
263
264     <highlight language="config">
265       Listen 192.170.2.1:8443 https
266     </highlight>
267
268     <note><title>Condition d'erreur</title>
269       Plusieurs directives <directive>Listen</directive> pour les m&ecirc;mes
270       adresse IP/port vont provoquer l'envoi d'un message d'erreur
271       <code>Address already in use</code>.
272     </note>
273
274 </usage>
275 <seealso><a href="../dns-caveats.html">Probl&egrave;mes avec DNS</a></seealso>
276 <seealso><a href="../bind.html">D&eacute;finition des adresses et ports
277 qu'utilise le serveur HTTP Apache</a></seealso>
278 <seealso><a
279 href="http://wiki.apache.org/httpd/CouldNotBindToAddress">Autre
280 discussion &agrave; propos du message d'erreur <code>Address already in
281 use</code>, citant d'autres causes possibles.</a></seealso>
282 </directivesynopsis>
283
284 <directivesynopsis>
285 <name>ListenCoresBucketsRatio</name>
286 <description>Rapport entre le nombre de coeurs de processeur activ&eacute;s et
287 le nombre de segments d'&eacute;coute</description>
288 <syntax>ListenCoresBucketsRatio <var>ratio</var></syntax>
289 <default>ListenCoresBucketsRatio 0 (disabled)</default>
290 <contextlist><context>server config</context></contextlist>
291 <modulelist>
292 <module>event</module>
293 <module>prefork</module>
294 <module>worker</module></modulelist>
295 <compatibility>Disponible &agrave; partir de la version 2.4.13 du serveur HTTP
296 Apache, avec un noyau supportant l'option de socket
297 <code>SO_REUSEPORT</code>, et distribuant uniform&eacute;ment les nouvelles
298 connexions aux sockets d'&eacute;coute des processus (ou threads) qui
299 l'utilisent (par exemple Linux versions 3.9 et ult&eacute;rieures, mais pas
300 l'impl&eacute;mentation courante de <code>SO_REUSEPORT</code> par les
301 plateformes de type BSD.</compatibility>
302
303 <usage>
304     <p>Vous pouvez utiliser la directive
305     <directive>ListenCoresBucketsRatio</directive> pour sp&eacute;cifier un
306     <var>ratio</var> entre le nombre de coeurs de CPU activ&eacute;s et le
307     nombre de segments d'&eacute;coute (listeners' buckets) souhait&eacute;s ;  le
308     serveur HTTP Apache va alors cr&eacute;er<code>num_cpu_cores / ratio</code>
309     segments d'&eacute;coute, chacun contenant son propre socket d'&eacute;coute
310     <directive>Listen</directive> sur le ou les m&ecirc;mes ports ; chaque
311     processus enfant sera associ&eacute; &agrave; un seul segment d'&eacute;coute (avec une
312     distribution de type round-robin des segments &agrave; la cr&eacute;ation des
313     processus enfants).</p>
314
315     <p>La directive <directive>ListenCoresBucketsRatio</directive> peut
316     am&eacute;liorer le support de la mont&eacute;e en charge lorsque l'arriv&eacute;e de
317     nouvelles connexions est/devient un goulot d'&eacute;tranglement. Le test
318     de cette fonctionnalit&eacute; avec des machines poss&eacute;dant un nombre de
319     coeurs de CPU important a permit de constater une am&eacute;lioration des
320     performances significative et des temps de r&eacute;ponse plus courts.</p>
321
322     <p>Pour que cette fonctionnalit&eacute; soit activ&eacute;e, le nombre de coeurs
323     de CPU doit &ecirc;tre &eacute;gal au moins au double du <var>ratio</var>
324     sp&eacute;cifi&eacute;. Si vous sp&eacute;cifiez la valeur recommand&eacute;e pour
325     <var>ratio</var>, &agrave; savoir <code>8</code>, le nombre minimum de
326     coeurs de processeurs disponibles sera alors de <code>16</code>.</p>
327 </usage>
328 </directivesynopsis>
329
330 <directivesynopsis>
331 <name>ListenBackLog</name>
332 <description>Longueur maximale de la liste d'attente des
333 connexions</description>
334 <syntax>ListenBacklog <var>backlog</var></syntax>
335 <default>ListenBacklog 511</default>
336 <contextlist><context>server config</context></contextlist>
337 <modulelist>
338 <module>event</module>
339 <module>mpm_netware</module><module>mpm_winnt</module>
340 <module>mpmt_os2</module><module>prefork</module>
341 <module>worker</module></modulelist>
342
343 <usage>
344     <p>La longueur maximale de la liste d'attente des connexions. En
345     g&eacute;n&eacute;ral, aucune modification n'est n&eacute;cessaire, ni m&ecirc;me souhaitable ;
346     cependant, sur certains syst&egrave;mes, il peut &ecirc;tre n&eacute;cessaire
347     d'en augmenter la valeur en cas d'attaque TCP SYN flood (envoi en
348     masse de requ&ecirc;tes SYN pour saturer le serveur). Voir le param&egrave;tre
349     backlog de l'appel syst&egrave;me <code>listen(2)</code>.</p>
350
351     <p>En fait, l'argument backlog sera souvent limit&eacute; &agrave; une valeur
352     inf&eacute;rieure en fonction du syst&egrave;me d'exploitation. Notez aussi que de
353     nombreux syst&egrave;mes d'exploitation ne tiennent pas vraiment compte de
354     la valeur sp&eacute;cifi&eacute;e pour l'argument backlog, mais s'en inspirent
355     seulement (et choisissent en g&eacute;n&eacute;ral une valeur sup&eacute;rieure).</p>
356 </usage>
357 </directivesynopsis>
358
359 <directivesynopsis>
360 <name>MaxRequestWorkers</name>
361 <description>Nombre maximum de connexions pouvant &ecirc;tre trait&eacute;es
362 simultan&eacute;ment</description>
363 <syntax>MaxRequestWorkers <var>nombre</var></syntax>
364 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
365 <contextlist><context>server config</context></contextlist>
366 <modulelist><module>event</module><module>prefork</module>
367 <module>worker</module>
368 </modulelist>
369
370 <usage>
371     <p>La directive <directive>MaxRequestWorkers</directive> permet de fixer le
372     nombre maximum de requ&ecirc;tes pouvant &ecirc;tre trait&eacute;es simultan&eacute;ment.
373     Si la limite <directive>MaxRequestWorkers</directive> est atteinte, toute
374     tentative de connexion sera normalement mise dans une file
375     d'attente, et ceci jusqu'&agrave; un certain nombre d&eacute;pendant de la
376     directive <directive module="mpm_common">ListenBacklog</directive>.
377     Lorsqu'un processus enfant se lib&egrave;rera suite &agrave; la fin du traitement
378     d'une requ&ecirc;te, la connexion en attente pourra &ecirc;tre trait&eacute;e &agrave; son
379     tour.</p>
380
381     <p>Pour les serveurs non thread&eacute;s (<em>c'est &agrave; dire</em> utilisant
382     <module>prefork</module>), la directive
383     <directive>MaxRequestWorkers</directive> d&eacute;finit alors le nombre maximum de
384     processus enfants qui pourront &ecirc;tre lanc&eacute;s simultan&eacute;ment pour
385     traiter les requ&ecirc;tes. La valeur par d&eacute;faut est <code>256</code> ; si
386     vous l'augmentez, vous devez aussi augmenter la valeur de la
387     directive <directive
388     module="mpm_common">ServerLimit</directive>.</p>
389
390     <p>Pour les serveur thread&eacute;s et hybrides (utilisant <em>par
391     exemple</em> <module>event</module> ou <module>worker</module>),
392     <directive>MaxRequestWorkers</directive> d&eacute;finit alors le nombre total de
393     threads qui seront disponibles pour servir les clients. Dans le
394     cas des MPMs hybrides, la valeur par d&eacute;faut est <code>16</code>
395     (directive <directive
396     module="mpm_common">ServerLimit</directive>) multipli&eacute; par la valeur
397     <code>25</code> (directive <directive module="mpm_common"
398     >ThreadsPerChild</directive>). Par cons&eacute;quent, pour affecter &agrave; la
399     directive <directive>MaxRequestWorkers</directive> une valeur qui requiert
400     plus de 16 processus, vous devez aussi augmenter la valeur de la
401     directive <directive module="mpm_common"
402     >ServerLimit</directive>.</p>
403
404     <p>Le nom de la directive <directive>MaxRequestWorkers</directive>
405     &eacute;tait <directive>MaxClients</directive> avant la version 2.3.13. Cet
406     ancien nom est encore support&eacute;.</p>
407 </usage>
408 </directivesynopsis>
409
410 <directivesynopsis>
411 <name>MaxMemFree</name>
412 <description>Quantit&eacute; maximale de m&eacute;moire que l'allocateur principal est
413 autoris&eacute; &agrave; conserver sans appeler <code>free()</code></description>
414 <syntax>MaxMemFree <var>KOctets</var></syntax>
415 <default>MaxMemFree 2048</default>
416 <contextlist><context>server config</context></contextlist>
417 <modulelist><module>event</module><module>mpm_netware</module>
418 <module>prefork</module><module>worker</module><module>mpm_winnt</module>
419 </modulelist>
420
421 <usage>
422     <p>La directive <directive>MaxMemFree</directive> permet de d&eacute;finir
423     le nombre maximum de KOctets libres que tout allocateur est
424     autoris&eacute; &agrave; conserver sans appeler <code>free()</code>. Dans les MPMs
425     thread&eacute;s, chaque thread poss&egrave;de son propre allocateur. Si elle est
426     d&eacute;finie &agrave; 0, la quantit&eacute; de m&eacute;moire libre que peut conserver un
427     allocateur est illimit&eacute;e.</p>
428 </usage>
429 </directivesynopsis>
430
431 <directivesynopsis>
432 <name>MaxConnectionsPerChild</name>
433 <description>Limite le nombre de connexions qu'un processus enfant va
434 traiter au cours de son fonctionnement</description>
435 <syntax>MaxConnectionsPerChild <var>number</var></syntax>
436 <default>MaxConnectionsPerChild 0</default>
437 <contextlist><context>server config</context></contextlist>
438 <modulelist><module>event</module><module>mpm_netware</module>
439 <module>mpm_winnt</module><module>mpmt_os2</module>
440 <module>prefork</module><module>worker</module></modulelist>
441 <compatibility>Disponible depuis la version 2.3.9 du serveur HTTP
442 Apache. L'ancien nom <code>MaxRequestsPerChild</code> est encore
443 support&eacute;.</compatibility>
444
445 <usage>
446     <p>La directive <directive>MaxConnectionsPerChild</directive> permet de
447     d&eacute;finir le nombre maximum de connexions qu'un processus enfant va
448     pouvoir traiter au cours de son fonctionnement. Lorsqu'il a trait&eacute;
449     <directive>MaxConnectionsPerChild</directive> connexions, le processus
450     enfant est arr&ecirc;t&eacute;. Si <directive>MaxConnectionsPerChild</directive> est
451     d&eacute;finie &agrave; <code>0</code>, il n'y a plus aucune limite sur le nombre
452     de connexions que le processus pourra traiter.</p>
453
454     <p>D&eacute;finir <directive>MaxConnectionsPerChild</directive> &agrave; une valeur
455     non nulle limite la quantit&eacute; de m&eacute;moire qu'un processus peut
456     consommer &agrave; cause de fuites (accidentelles) de m&eacute;moire.</p>
457
458 </usage>
459 </directivesynopsis>
460
461 <directivesynopsis>
462 <name>MaxSpareThreads</name>
463 <description>Nombre maximum de threads inactifs</description>
464 <syntax>MaxSpareThreads <var>nombre</var></syntax>
465 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
466 <contextlist><context>server config</context></contextlist>
467 <modulelist><module>event</module><module>mpm_netware</module>
468 <module>mpmt_os2</module><module>worker</module></modulelist>
469
470 <usage>
471     <p>C'est le nombre maximum de threads inactifs. Les MPMs utilisent
472     cette directive de diff&eacute;rentes mani&egrave;res.</p>
473
474     <p>Pour <module>worker</module>, la d&eacute;finition par d&eacute;faut est
475     <code>MaxSpareThreads 250</code>. Ce MPM g&egrave;re les threads inactifs
476     au niveau du serveur. Si le serveur poss&egrave;de trop de threads
477     inactifs, des processus enfants seront arr&ecirc;t&eacute;s jusqu'&agrave; ce que le
478     nombre de threads inactifs repasse en dessous de cette limite.</p>
479
480     <p>Pour <module>mpm_netware</module>, la d&eacute;finition par d&eacute;faut est
481     <code>MaxSpareThreads 100</code>. Comme ce MPM n'ex&eacute;cute qu'un seul
482     processus, le nombre de processus inactifs est surveill&eacute; au
483     niveau du serveur.</p>
484
485     <p><module>mpmt_os2</module> fonctionne de mani&egrave;re similaire &agrave;
486     <module>mpm_netware</module>. Pour <module>mpmt_os2</module>, la
487     valeur par d&eacute;faut est <code>10</code>.</p>
488
489     <note><title>Contraintes</title>
490       <p>La gamme de valeurs pour <directive>MaxSpareThreads</directive>
491       est limit&eacute;e. Apache httpd corrigera automatiquement cette valeur selon
492       les r&egrave;gles suivantes :</p>
493       <ul>
494         <li>Avec <module>mpm_netware</module>, <directive
495         >MaxSpareThreads</directive> doit &ecirc;tre sup&eacute;rieure &agrave; <directive
496         module="mpm_common">MinSpareThreads</directive>.</li>
497
498         <li>Avec
499         <module>worker</module>, <directive>MaxSpareThreads</directive>
500         doit &ecirc;tre sup&eacute;rieure ou &eacute;gale &agrave; la somme de <directive
501         module="mpm_common">MinSpareThreads</directive> et <directive
502         module="mpm_common">ThreadsPerChild</directive>.</li>
503       </ul>
504     </note>
505 </usage>
506 <seealso><directive module="mpm_common">MinSpareThreads</directive></seealso>
507 <seealso><directive module="mpm_common">StartServers</directive></seealso>
508 <seealso><directive module="prefork">MaxSpareServers</directive></seealso>
509 </directivesynopsis>
510
511 <directivesynopsis>
512 <name>MinSpareThreads</name>
513 <description>Nombre minimum de threads inactifs qui seront disponibles
514 pour pouvoir traiter les pics de requ&ecirc;tes</description>
515 <syntax>MinSpareThreads <var>nombre</var></syntax>
516 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
517 <contextlist><context>server config</context></contextlist>
518 <modulelist><module>event</module><module>mpm_netware</module>
519 <module>mpmt_os2</module><module>worker</module></modulelist>
520
521 <usage>
522     <p>C'est le nombre minimum de threads inactifs pour &ecirc;tre en mesure
523     de traiter les pics de requ&ecirc;tes. Les MPMs utilisent cette directive
524     de diff&eacute;rentes mani&egrave;res.</p>
525
526     <p>Avec <module>worker</module>, la d&eacute;finition par d&eacute;faut est
527     <code>MinSpareThreads 75</code>, et le nombre de threads inactifs
528     est surveill&eacute; au niveau du serveur. Si le serveur ne poss&egrave;de pas
529     assez de threads inactifs, des processus enfants sont cr&eacute;&eacute;s jusqu'&agrave;
530     ce que le nombre de threads inactifs repasse au dessus de
531     <var>nombre</var>.</p>
532
533     <p>Avec <module>mpm_netware</module>, la d&eacute;finition par d&eacute;faut est
534     <code>MinSpareThreads 10</code> et, comme ce MPM n'ex&eacute;cute qu'un
535     seul processus, le nombre de threads est surveill&eacute; au niveau du
536     serveur.</p>
537
538     <p><module>mpmt_os2</module> fonctionne de mani&egrave;re similaire &agrave;
539     <module>mpm_netware</module>. Pour <module>mpmt_os2</module>, la
540     valeur par d&eacute;faut est <code>5</code>.</p>
541
542 </usage>
543 <seealso><directive module="mpm_common">MaxSpareThreads</directive></seealso>
544 <seealso><directive module="mpm_common">StartServers</directive></seealso>
545 <seealso><directive module="prefork">MinSpareServers</directive></seealso>
546 </directivesynopsis>
547
548 <directivesynopsis>
549 <name>ScoreBoardFile</name>
550 <description>Chemin du fichier o&ugrave; sont stock&eacute;es les donn&eacute;es concernant
551 la coordination des processus enfants</description>
552 <syntax>ScoreBoardFile <var>chemin fichier</var></syntax>
553 <default>ScoreBoardFile logs/apache_runtime_status</default>
554 <contextlist><context>server config</context></contextlist>
555 <modulelist><module>event</module><module>mpm_winnt</module>
556 <module>prefork</module><module>worker</module></modulelist>
557
558 <usage>
559     <p>Le serveur HTTP Apache utilise un tableau de bord pour la
560     communication entre le processus parent et les processus enfants.
561     Pour faciliter cette communication, certaines architectures
562     n&eacute;cessitent un fichier. En l'absence de cette directive, donc si
563     aucun nom de fichier n'est sp&eacute;cifi&eacute;, Apache httpd tentera tout
564     d'abord de cr&eacute;er un tableau uniquement en m&eacute;moire (en utilisant la
565     m&eacute;moire partag&eacute;e anonyme) ; et si il n'y parvient pas, il tentera de
566     cr&eacute;er un fichier sur disque (en utilisant la m&eacute;moire partag&eacute;e &agrave; base
567     de fichier). Si cette directive est utilis&eacute;e, Apache httpd cr&eacute;era
568     syst&eacute;matiquement un fichier sur disque.</p>
569
570     <example><title>Exemple</title>
571     <highlight language="config">
572       ScoreBoardFile /var/run/apache_runtime_status
573       </highlight>
574     </example>
575
576     <p>Une m&eacute;moire partag&eacute;e sous forme de fichier est utile pour les
577     applications tierces qui n&eacute;cessitent un acc&egrave;s direct au tableau de
578     bord des processus.</p>
579
580     <p>Si vous utilisez un <directive>ScoreBoardFile</directive>, vous
581     pourrez constater une am&eacute;lioration des performances en le pla&ccedil;ant
582     sur un disque virtuel en RAM. Assurez-vous cependant de tenir compte
583     des m&ecirc;mes avertissements que ceux concernant le chemin du fichier
584     journal et la <a
585     href="../misc/security_tips.html">s&eacute;curit&eacute;</a>.</p>
586 </usage>
587 <seealso><a href="../stopping.html">Arr&ecirc;ter et red&eacute;marrer
588 le serveur HTTP Apache</a></seealso>
589 </directivesynopsis>
590
591 <directivesynopsis>
592 <name>ReceiveBufferSize</name>
593 <description>Taille du tampon TCP en entr&eacute;e</description>
594 <syntax>ReceiveBufferSize <var>octets</var></syntax>
595 <default>ReceiveBufferSize 0</default>
596 <contextlist><context>server config</context></contextlist>
597 <modulelist><module>event</module><module>mpm_netware</module>
598 <module>mpm_winnt</module><module>mpmt_os2</module><module>prefork</module>
599 <module>worker</module></modulelist>
600
601 <usage>
602     <p>Le serveur va fixer la taille du tampon TCP en entr&eacute;e au
603     nombre d'octets sp&eacute;cifi&eacute;.</p>
604
605     <p>Si la directive est d&eacute;finie &agrave; <code>0</code>, le serveur va
606     utiliser la valeur par d&eacute;faut adopt&eacute;e par le syst&egrave;me
607     d'exploitation.</p>
608 </usage>
609 </directivesynopsis>
610
611 <directivesynopsis>
612 <name>SendBufferSize</name>
613 <description>Taille du tampon TCP en sortie</description>
614 <syntax>SendBufferSize <var>octets</var></syntax>
615 <default>SendBufferSize 0</default>
616 <contextlist><context>server config</context></contextlist>
617 <modulelist><module>event</module><module>mpm_netware</module>
618 <module>mpm_winnt</module><module>mpmt_os2</module><module>prefork</module>
619 <module>worker</module></modulelist>
620
621 <usage>
622     <p>D&eacute;finit la taille du tampon TCP en sortie avec le nombre
623     d'octets sp&eacute;cifi&eacute;. Ceci s'av&egrave;re souvent tr&egrave;s utile pour augmenter les
624     valeurs par d&eacute;faut standards du pass&eacute; des syst&egrave;mes d'exploitation
625     pour les transmissions &agrave; grande vitesse et haute densit&eacute; (<em>c'est
626     &agrave; dire</em> de l'ordre de 100ms comme sur les liaisons rapides
627     transcontinentales).</p>
628
629     <p>Si la directive est d&eacute;finie &agrave; <code>0</code>, le serveur va
630     utiliser la valeur par d&eacute;faut adopt&eacute;e par le syst&egrave;me
631     d'exploitation.</p>
632
633     <p>L'am&eacute;lioration des performances des connexions &agrave; grande vitesse
634     et &agrave; temps de latence &eacute;lev&eacute;, peut n&eacute;cessiter
635     une intervention au niveau de la configuration de votre syst&egrave;me
636     d'exploitation.</p>
637
638     <note><p>Sous certains syst&egrave;mes d'exploitation, la modification du
639     comportement TCP via une augmentation de la valeur de
640     <directive>SendBufferSize</directive> risque de ne pas &ecirc;tre
641     perceptible, si la directive <directive
642     module="core">EnableSendfile</directive> n'est pas d&eacute;finie &agrave; OFF.
643     Cette interaction ne s'applique qu'aux fichiers statiques.</p> </note>
644 </usage>
645 </directivesynopsis>
646
647 <directivesynopsis>
648 <name>ServerLimit</name>
649 <description>Limite sup&eacute;rieure de la d&eacute;finition du nombre de
650 processus</description>
651 <syntax>ServerLimit <var>nombre</var></syntax>
652 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
653 <contextlist><context>server config</context></contextlist>
654 <modulelist><module>event</module><module>prefork</module>
655 <module>worker</module></modulelist>
656
657 <usage>
658     <p>Avec le MPM <module>prefork</module>, cette directive d&eacute;finit le
659     nombre maximum que l'on peut affecter &agrave; la directive <directive
660     module="mpm_common">MaxRequestWorkers</directive>, et ceci pour la
661     dur&eacute;e de vie du processus Apache httpd. Avec le
662     MPM <module>worker</module>, cette directive, en combinaison avec
663     <directive module="mpm_common">ThreadLimit</directive>, d&eacute;finit le
664     nombre maximum que l'on peut affecter &agrave; <directive
665     module="mpm_common">MaxRequestWorkers</directive>, et ceci pour la dur&eacute;e de
666     vie du processus Apache httpd. Au cours d'un red&eacute;marrage, vous pouvez
667     modifier la valeur de la directive <directive
668     module="mpm_common">MaxRequestWorkers</directive>, alors que toute
669     tentative de modification de la valeur de la directive <directive
670     module="mpm_common">ServerLimit</directive> sera ignor&eacute;e.</p>
671
672     <p>Cette directive doit &ecirc;tre utilis&eacute;e avec pr&eacute;caution. Si
673     <directive>ServerLimit</directive> est d&eacute;finie &agrave; une valeur beaucoup
674     plus grande que n&eacute;cessaire, de la m&eacute;moire partag&eacute;e suppl&eacute;mentaire
675     sera inutilement allou&eacute;e. Si &agrave; la fois
676     <directive>ServerLimit</directive> et <directive
677     module="mpm_common">MaxRequestWorkers</directive> poss&egrave;dent des valeurs
678     sup&eacute;rieures &agrave; ce que le syst&egrave;me peut supporter, ce dernier peut
679     devenir instable ou Apache httpd peut tout simplement refuser de d&eacute;marrer.</p>
680
681     <p>Avec le MPM <module>prefork</module>, n'utilisez cette directive
682     que si vous devez d&eacute;finir <directive
683     module="mpm_common">MaxRequestWorkers</directive> &agrave; une valeur sup&eacute;rieure &agrave;
684     256 (valeur par d&eacute;faut). N'affectez pas &agrave; la directive <directive
685     module="mpm_common">ServerLimit</directive> une valeur sup&eacute;rieure &agrave;
686     celle que vous avez pr&eacute;vu d'affecter &agrave; la directive <directive
687     module="mpm_common">MaxRequestWorkers</directive>.</p>
688
689     <p>Avec <module>worker</module>, n'utilisez cette directive que si
690     la d&eacute;finition de vos directives <directive
691     module="mpm_common">MaxRequestWorkers</directive> et <directive
692     module="mpm_common">ThreadsPerChild</directive> n&eacute;cessitent plus de
693     16 processus serveurs (valeur par d&eacute;faut). N'affectez pas &agrave; la
694     directive <directive module="mpm_common">ServerLimit</directive> une
695     valeur sup&eacute;rieure au nombre de processus requis pour la d&eacute;finition
696     des directives <directive module="mpm_common">MaxRequestWorkers
697     </directive> et <directive
698     module="mpm_common">ThreadsPerChild</directive>.</p>
699
700     <note><title>Note</title>
701       <p>Il existe une limite de <code>ServerLimit 20000</code> cod&eacute;e en
702       dur dans le serveur (200000 pour le MPM <module>prefork</module>).
703       Ceci est cens&eacute; &eacute;viter les effets d&eacute;sastreux que pourrait provoquer
704       une faute de frappe. Pour d&eacute;passer cette limite, vous devez
705       modifier la valeur de MAX_SERVER_LIMIT dans le fichier source du
706       mpm et recompiler le serveur.</p>
707     </note>
708 </usage>
709 <seealso><a href="../stopping.html">Arr&ecirc;ter et red&eacute;marrer
710 le serveur HTTP Apache</a></seealso>
711 </directivesynopsis>
712
713 <directivesynopsis>
714 <name>StartServers</name>
715 <description>Nombre de processus enfants du serveur cr&eacute;&eacute;s au
716 d&eacute;marrage</description>
717 <syntax>StartServers <var>nombre</var></syntax>
718 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
719 <contextlist><context>server config</context></contextlist>
720 <modulelist><module>event</module><module>mpmt_os2</module>
721 <module>prefork</module><module>worker</module>
722 </modulelist>
723
724 <usage>
725     <p>La directive <directive>StartServers</directive> permet de
726     d&eacute;finir le nombre de processus enfants du serveur cr&eacute;&eacute;s au
727     d&eacute;marrage. Comme le nombre de processus est contr&ocirc;l&eacute; dynamiquement
728     en fonction de la charge (voir <directive
729     module="mpm_common">MinSpareThreads</directive>, <directive
730     module="mpm_common">MaxSpareThreads</directive>, <directive
731     module="prefork">MinSpareServers</directive>, <directive
732     module="prefork">MaxSpareServers</directive>), il n'est en g&eacute;n&eacute;ral
733     pas n&eacute;cessaire d'ajuster ce param&egrave;tre.</p>
734
735     <p>La valeur par d&eacute;faut diff&egrave;re d'un MPM &agrave; l'autre. Pour
736     <module>worker</module>, la d&eacute;finition par d&eacute;faut est
737     <code>StartServers 3</code> ; la valeur par d&eacute;faut est
738     <code>5</code> pour <module>prefork</module> et <code>2</code>
739     pour <module>mpmt_os2</module>.</p>
740 </usage>
741 </directivesynopsis>
742
743 <directivesynopsis>
744 <name>StartThreads</name>
745 <description>Nombre de threads cr&eacute;&eacute;s au d&eacute;marrage</description>
746 <syntax>StartThreads <var>nombre</var></syntax>
747 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
748 <contextlist><context>server config</context></contextlist>
749 <modulelist><module>mpm_netware</module></modulelist>
750
751 <usage>
752     <p>C'est le nombre de threads cr&eacute;&eacute;s au d&eacute;marrage du serveur. Comme
753     le nombre de threads est contr&ocirc;l&eacute; dynamiquement
754     en fonction de la charge (voir <directive
755     module="mpm_common">MinSpareThreads</directive>, <directive
756     module="mpm_common">MaxSpareThreads</directive>, <directive
757     module="prefork">MinSpareServers</directive>, <directive
758     module="prefork">MaxSpareServers</directive>), il n'est en g&eacute;n&eacute;ral
759     pas n&eacute;cessaire d'ajuster ce param&egrave;tre.</p>
760
761     <p>Pour <module>mpm_netware</module>, la d&eacute;finition par d&eacute;faut est
762     <code>StartThreads 50</code> et, comme il n'y a qu'un processus, il
763     s'agit du nombre total de threads cr&eacute;&eacute;s au d&eacute;marrage pour servir les
764     requ&ecirc;tes.</p>
765 </usage>
766 </directivesynopsis>
767
768 <directivesynopsis>
769 <name>ThreadLimit</name>
770 <description>Le nombre de threads maximum que l'on peut d&eacute;finir par
771 processus enfant</description>
772 <syntax>ThreadLimit <var>nombre</var></syntax>
773 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
774 <contextlist><context>server config</context></contextlist>
775 <modulelist><module>event</module><module>mpm_winnt</module>
776 <module>worker</module></modulelist>
777
778 <usage>
779     <p>Cette directive permet de d&eacute;finir le nombre maximum que l'on peut
780     affecter &agrave; la directive <directive
781     module="mpm_common">ThreadsPerChild</directive> pour la dur&eacute;e de vie
782     du processus Apache httpd. La directive  <directive
783     module="mpm_common">ThreadsPerChild</directive> peut &ecirc;tre modifi&eacute;e
784     au cours d'un red&eacute;marrage jusqu'&agrave; la valeur de la directive <directive
785     module="mpm_common">ThreadLimit</directive>, mais toute tentative
786     de modification de la directive <directive
787     module="mpm_common">ThreadLimit</directive> au cours d'un
788     red&eacute;marrage sera ignor&eacute;e.</p>
789
790     <p>L'utilisation de cette directive doit faire l'objet de
791     pr&eacute;cautions particuli&egrave;res. Si <directive>ThreadLimit</directive> est
792     d&eacute;finie &agrave; une valeur tr&egrave;s sup&eacute;rieure &agrave; la directive <directive
793     module="mpm_common">ThreadsPerChild</directive>, de la m&eacute;moire
794     partag&eacute;e suppl&eacute;mentaire sera inutilement allou&eacute;e. Si les directives
795     <directive>ThreadLimit</directive> et <directive
796     module="mpm_common">ThreadsPerChild</directive> sont d&eacute;finies &agrave; des
797     valeurs sup&eacute;rieures &agrave; ce que le syst&egrave;me peut supporter, ce dernier
798     peut devenir instable, ou Apache httpd peut tout simplement refuser de
799     d&eacute;marrer. Ne d&eacute;finissez pas cette directive &agrave; une valeur sup&eacute;rieure
800     &agrave; la valeur maximale que vous pensez affecter &agrave; la directive <directive
801     module="mpm_common">ThreadsPerChild</directive> pour le processus
802     Apache httpd en cours d'ex&eacute;cution.</p>
803
804     <p>La valeur par d&eacute;faut de la directive
805     <directive>ThreadLimit</directive> est <code>1920</code> avec
806     <module>mpm_winnt</module>, et <code>64</code> avec les autres
807     MPMs.</p>
808
809     <note><title>Note</title>
810       <p>Il existe une limite de <code>ThreadLimit 20000</code> (ou
811       <code>ThreadLimit 100000</code> avec <module>event</module>,
812       <code>ThreadLimit 15000</code> avec <module>mpm_winnt</module>)
813       cod&eacute;e en dur dans le serveur. Ceci est cens&eacute; &eacute;viter les effets
814       d&eacute;sastreux que pourrait provoquer une faute de frappe. Pour
815       d&eacute;passer cette limite, vous devez modifier la valeur de
816       MAX_THREAD_LIMIT dans le fichier source du mpm et recompiler le
817       serveur.</p>
818     </note>
819 </usage>
820 </directivesynopsis>
821
822 <directivesynopsis>
823 <name>ThreadsPerChild</name>
824 <description>Nombre de threads cr&eacute;&eacute;s par chaque processus
825 enfant</description>
826 <syntax>ThreadsPerChild <var>nombre</var></syntax>
827 <default>Voir ci-dessous pour plus de d&eacute;tails</default>
828 <contextlist><context>server config</context></contextlist>
829 <modulelist><module>event</module><module>mpm_winnt</module>
830 <module>worker</module></modulelist>
831
832 <usage>
833     <p>Cette directive permet de d&eacute;finir le nombre de threads que va
834     cr&eacute;er chaque processus enfant. Un processus enfant cr&eacute;e ces threads
835     au d&eacute;marrage et n'en cr&eacute;e plus d'autres par la suite. Si l'on
836     utilise un MPM comme <module>mpm_winnt</module> qui ne lance qu'un
837     processus enfant, ce nombre doit &ecirc;tre suffisamment grand pour
838     supporter la charge du serveur. Avec un MPM comme
839     <module>worker</module> qui lance plusieurs processus enfants, c'est
840     le nombre <em>total</em> de threads qui doit &ecirc;tre suffisamment grand
841     pour supporter la charge du serveur.</p>
842
843     <p>La valeur par d&eacute;faut de la directive
844     <directive>ThreadsPerChild</directive> est <code>64</code> avec
845     <module>mpm_winnt</module>, et <code>25</code> avec les autres
846     MPMs.</p>
847 </usage>
848 </directivesynopsis>
849
850 <directivesynopsis>
851 <name>ThreadStackSize</name>
852 <description>La taille en octets de la pile qu'utilisent les threads qui
853 traitent les connexions clients</description>
854 <syntax>ThreadStackSize <var>taille</var></syntax>
855 <default>65536 sous NetWare; varie en fonction des autres syst&egrave;mes
856 d'exploitation</default>
857 <contextlist><context>server config</context></contextlist>
858 <modulelist><module>event</module><module>mpm_netware</module>
859 <module>mpmt_os2</module><module>mpm_winnt</module><module>worker</module>
860 <module>event</module>
861 </modulelist>
862 <compatibility>Disponible dans les versions 2.1 et sup&eacute;rieures
863 du serveur HTTP Apache</compatibility>
864
865 <usage>
866     <p>La directive <directive>ThreadStackSize</directive> permet de
867     d&eacute;finir la taille de la pile (pour les donn&eacute;es propres) qu'utilisent
868     les threads qui traitent les connexions clients en faisant appel &agrave;
869     des modules. Dans la plupart des cas, la valeur par d&eacute;faut de la
870     taille de la pile du syst&egrave;me d'exploitation convient, mais il existe
871     certaines situations o&ugrave; il peut s'av&eacute;rer n&eacute;cessaire de l'ajuster
872     :</p>
873
874     <ul>
875       <li>Sur les plates-formes qui poss&egrave;dent une valeur par d&eacute;faut de
876       taille de la pile relativement petite (par exemple HP-UX), Apache
877       httpd peut se crasher si l'on utilise certains modules tiers qui
878       poss&egrave;dent un quantit&eacute; de donn&eacute;es propres stock&eacute;es relativement
879       importante. Il se peut que ces m&ecirc;mes modules fonctionnent
880       correctement sur d'autres plate-formes o&ugrave; la valeur par d&eacute;faut de
881       la taille de la pile est sup&eacute;rieure. Ce type de crash peut &ecirc;tre
882       evit&eacute; en d&eacute;finissant <directive>ThreadStackSize</directive> &agrave; une
883       valeur sup&eacute;rieure &agrave; la valeur par d&eacute;faut du syst&egrave;me
884       d'exploitation. Ce type d'ajustement n'est n&eacute;cessaire que si le
885       fournisseur du module tiers en fait mention, ou si le diagnostic
886       d'un crash d'Apache httpd indique que la taille de la pile &eacute;tait trop
887       petite.</li>
888
889       <li>Sur les plates-formes o&ugrave; la taille par d&eacute;faut de la pile des
890       threads est sensiblement sup&eacute;rieure &agrave; la taille n&eacute;cessaire pour la
891       configuration du serveur web, il est possible de disposer d'un
892       plus grand nombre de threads par processus enfant si la directive
893       <directive>ThreadStackSize</directive> est d&eacute;finie &agrave; une valeur
894       inf&eacute;rieure &agrave; la valeur par d&eacute;faut du syst&egrave;me d'exploitation.
895       Cependant, ce
896       type d'ajustement ne doit &ecirc;tre effectu&eacute; que dans un environnement
897       de test permettant de qualifier le serveur web au maximum de ses
898       possibilit&eacute;s, car il peut arriver, dans de rares cas, que des
899       requ&ecirc;tes n&eacute;cessitent une taille de pile sup&eacute;rieure pour pouvoir
900       &ecirc;tre trait&eacute;es. La taille minimale requise pour la pile d&eacute;pend
901       fortement des modules utilis&eacute;s, mais toute modification dans la
902       configuration du serveur web peut invalider la d&eacute;finition courante
903       de la directive <directive>ThreadStackSize</directive>.</li>
904
905       <li>Sous Linux, cette directive ne peut &ecirc;tre utilis&eacute;e que pour
906       augmenter la valeur par defaut de la taille de la pile, car
907       l'appel syst&egrave;me sous-jacent utilise cette valeur comme taille de pile
908       <em>minimale</em>. C'est la limite logicielle (souvent &eacute;lev&eacute;e)
909       pour <code>ulimit -s</code> (8Mo si aucune limite) qui est
910       utilis&eacute;e comme taille de pile par d&eacute;faut.</li>
911     </ul>
912
913     <note>Il est recommand&eacute; de ne pas r&eacute;duire
914     <directive>ThreadStackSize</directive>, &agrave; moins qu'un grand nombre
915     de threads par processus enfant ne soit n&eacute;cessaire. Sur certaines
916     plates-formes (y compris Linux), une valeur de 128000 est d&eacute;j&agrave; trop
917     basse et provoque des crashes avec certains modules courants.</note>
918 </usage>
919 </directivesynopsis>
920
921 </modulesynopsis>