--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>mpm_common - Serveur Apache HTTP</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
+<script src="../style/scripts/prettify.js" type="text/javascript">
+</script>
+
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body>
+<div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
+<p class="apache">Serveur Apache HTTP Version 2.4</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
+<div id="page-content">
+<div id="preamble"><h1>Apache MPM : Directives Communes</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../de/mod/mpm_common.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
+<a href="../en/mod/mpm_common.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mpm_common.html" title="Français"> fr </a> |
+<a href="../ja/mod/mpm_common.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../tr/mod/mpm_common.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
+</div>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Une série de directives implémentées par plusieurs
+modules multi-processus (MPM)</td></tr>
+<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>MPM</td></tr></table>
+</div>
+<div id="quickview"><h3 class="directives">Directives</h3>
+<ul id="toc">
+<li><img alt="" src="../images/down.gif" /> <a href="#coredumpdirectory">CoreDumpDirectory</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#enableexceptionhook">EnableExceptionHook</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#gracefulshutdowntimeout">GracefulShutdownTimeout</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#listen">Listen</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#listenbacklog">ListenBackLog</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#maxconnectionsperchild">MaxConnectionsPerChild</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#maxmemfree">MaxMemFree</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#maxrequestworkers">MaxRequestWorkers</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#maxsparethreads">MaxSpareThreads</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#minsparethreads">MinSpareThreads</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#pidfile">PidFile</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#receivebuffersize">ReceiveBufferSize</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#scoreboardfile">ScoreBoardFile</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#sendbuffersize">SendBufferSize</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#serverlimit">ServerLimit</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#startservers">StartServers</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#startthreads">StartThreads</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#threadlimit">ThreadLimit</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#threadsperchild">ThreadsPerChild</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#threadstacksize">ThreadStackSize</a></li>
+</ul>
+<ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="CoreDumpDirectory" id="CoreDumpDirectory">CoreDumpDirectory</a> <a name="coredumpdirectory" id="coredumpdirectory">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le répertoire dans lequel le serveur HTTP Apache va tenter de se
+positionner avant d'effectuer un vidage mémoire</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CoreDumpDirectory <var>répertoire</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour le répertoire par défaut</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Cette directive permet de définir le répertoire dans lequel
+ Apache httpd va tenter de se positionner avant d'effectuer un vidage
+ mémoire sur disque.
+ Si votre système d'exploitation est configuré pour créer des
+ fichiers de vidage mémoire dans le répertoire de travail des
+ processus qui se sont crashés,
+ <code class="directive">CoreDumpDirectory</code> est nécessaire pour
+ définir un répertoire de travail autre que le répertoire par défaut
+ <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>, ce répertoire de
+ travail ne devant pas être accessible en écriture par l'utilisateur sous
+ lequel le serveur s'exécute.</p>
+
+ <p>Si vous avez besoin d'un vidage mémoire pour le débogage, vous
+ pouvez utiliser cette directive pour le placer à un endroit
+ différent. Cette directive n'a aucun effet si votre système
+ d'exploitation n'est pas configuré pour créer des
+ fichiers de vidage mémoire dans le répertoire de travail des
+ processus qui se sont crashés.</p>
+
+ <div class="note"><h3>Vidages mémoire sous Linux</h3>
+ <p>Si Apache httpd est démarré sous l'utilisateur root puis bascule vers
+ un autre utilisateur, le noyau Linux <em>désactive</em> les
+ vidages mémoire, même si le répertoire est accessible en écriture au
+ processus. Apache httpd (versions 2.0.46 et supérieures) réactive les
+ vidages mémoire sous Linux 2.4 et au delà, mais seulement si vous
+ définissez une directive <code class="directive">CoreDumpDirectory</code>.</p>
+ </div>
+
+ <div class="note">
+ <h3>Vidages mémoire sous BSD</h3>
+ <p>Pour activer le vidage mémoire des exécutables suid sur les
+ systèmes de style BSD (comme FreeBSD), définissez
+ <code>kern.sugid_coredump</code> à 1.
+ </p>
+ </div>
+
+ <div class="note"><h3>Signaux spécifiques</h3>
+ <p><code class="directive">CoreDumpDirectory</code> n'est traité qu'à la
+ reception d'un certain nombre de signaux , SIGFPE, SIGILL, SIGABORT,
+ SIGSEGV, et SIGBUS.</p>
+ <p>
+ Sur certains systèmes d'exploitation, SIGQUIT provoque aussi un
+ vidage mémoire, mais n'est pas traité par les directives
+ <code class="directive">CoreDumpDirectory</code> ou
+ <code class="directive">EnableExceptionHook</code>, si bien que la
+ définition du répertoire d'enregistrement du vidage mémoire est
+ entièrement dévolue au système d'exploitation.</p>
+ </div>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="EnableExceptionHook" id="EnableExceptionHook">EnableExceptionHook</a> <a name="enableexceptionhook" id="enableexceptionhook">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active un hook ("point d'accrochage logiciel") qui exécute des
+gestionnaires d'exception après un crash</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>EnableExceptionHook On|Off</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>EnableExceptionHook Off</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Pour des raisons de sécurité, cette directive n'est disponible
+ que si la compilation du serveur a été configurée avec l'option
+ <code>--enable-exception-hook</code>. Elle permet d'activer un hook
+ ("point d'accrochage logiciel")
+ qui autorise certains modules externes à effectuer un branchement et
+ accomplir telle ou telle action après le crash d'un processus
+ enfant.</p>
+
+ <p>Deux modules, <code>mod_whatkilledus</code> et
+ <code>mod_backtrace</code> utilisent ce hook. Veuillez vous
+ référer à la <a href="http://people.apache.org/~trawick/exception_hook.html">page EnableExceptionHook</a> de Jeff Trawick pour plus
+ d'informations à leur sujet.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="GracefulShutdownTimeout" id="GracefulShutdownTimeout">GracefulShutdownTimeout</a> <a name="gracefulshutdowntimeout" id="gracefulshutdowntimeout">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Spécifie le délai maximum après lequel le serveur va
+s'arrêter dans le cas d'un arrêt "en douceur"</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>GracefulShutDownTimeout <var>secondes</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>GracefulShutDownTimeout 0</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/event.html">event</a></code></td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible dans les versions 2.2 et supérieures</td></tr>
+</table>
+ <p>La directive <code class="directive">GracefulShutdownTimeout</code>
+ permet de spécifier le temps, en secondes, pendant lequel le serveur
+ va continuer à fonctionner après avoir reçu un signal
+ "graceful-stop" ("Arrêt en douceur"), afin de terminer le traitement
+ des connexions en cours.</p>
+
+ <p>Définir cette valeur à zéro signifie au serveur d'attendre
+ jusqu'à ce que toutes les requêtes en cours aient été traitées.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="Listen" id="Listen">Listen</a> <a name="listen" id="listen">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Les adresses IP et ports sur lesquels le serveur écoute</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Listen [<var>adresse IP</var>:]<var>numéro port</var>
+[<var>protocole</var>]</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/event.html">event</a></code></td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>L'argument <var>protocole</var> est supporté depuis la version
+2.1.5</td></tr>
+</table>
+ <p>La directive <code class="directive">Listen</code> permet de signifier à
+ Apache httpd de ne se mettre à l'écoute que sur les adresses IP et ports spécifiés ; par
+ défaut, le serveur répond aux requêtes en provenance de toutes les
+ interfaces réseau. La directive <code class="directive">Listen</code> est
+ dorénavant requise, et si elle est absente du fichier de
+ configuration, le serveur refusera de démarrer. Ceci constitue un
+ changement par rapport aux versions précédentes d'Apache httpd.</p>
+
+ <p>La directive <code class="directive">Listen</code> signifie au serveur de
+ n'accepter les requêtes entrantes que vers le port ou le couple
+ adresse-port spécifié. Si seulement un port est spécifié, le serveur
+ se met à l'écoute sur ce port sur toutes les interfaces réseau. Si une adresse IP
+ et un port sont spécifiés, le serveur va se mettre à l'écoute sur ce port sur
+ l'interface réseau correspondant à l'adresse IP.</p>
+
+ <p>On peut utiliser autant de directives
+ <code class="directive">Listen</code> que nécessaire pour spécifier
+ plusieurs adresses et/ou ports à écouter. Le serveur répondra aux
+ requêtes vers tous les adresses et ports spécifiés.</p>
+
+ <p>Par exemple, pour que le serveur accepte les connexions sur les
+ ports 80 et 8000, utilisez :</p>
+
+ <pre class="prettyprint lang-config">
+Listen 80
+Listen 8000
+ </pre>
+
+
+ <p>Pour que la serveur accepte les connexions sur deux interfaces et
+ ports particuliers, spécifiez :</p>
+
+ <pre class="prettyprint lang-config">
+Listen 192.170.2.1:80
+Listen 192.170.2.5:8000
+ </pre>
+
+
+ <p>Les adressee IPv6 doivent être entourées de crochets, comme dans
+ l'exemple suivant :</p>
+
+ <pre class="prettyprint lang-config">
+ Listen [2001:db8::a00:20ff:fea7:ccea]:80
+ </pre>
+
+
+ <p>L'argument optionnel <var>protocole</var> n'est pas nécessaire
+ dans la plupart des configurations. S'il est absent,
+ <code>https</code> est la valeur par défaut pour le port 443 et
+ <code>http</code> l'est pour tous les autres ports. L'argument
+ protocole sert à déterminer quel module doit traiter une requête, et
+ à appliquer des optimisations spécifiques à certains protocoles à
+ l'aide de la directive <code class="directive"><a href="../mod/core.html#acceptfilter">AcceptFilter</a></code>.</p>
+
+ <p>La spécification d'un protocole n'est nécessaire que si vous
+ utilisez des ports non standards. Par exemple, pour configurer un
+ site en <code>https</code> sur le port 8443 :</p>
+
+ <pre class="prettyprint lang-config">
+ Listen 192.170.2.1:8443 https
+ </pre>
+
+
+ <div class="note"><h3>Condition d'erreur</h3>
+ Plusieurs directives <code class="directive">Listen</code> pour les mêmes
+ adresse IP/port vont provoquer l'envoi d'un message d'erreur
+ <code>Address already in use</code>.
+ </div>
+
+
+<h3>Voir aussi</h3>
+<ul>
+<li><a href="../dns-caveats.html">Problèmes avec DNS</a></li>
+<li><a href="../bind.html">Définition des adresses et ports
+qu'utilise le serveur HTTP Apache</a></li>
+<li><a href="http://wiki.apache.org/httpd/CouldNotBindToAddress">Autre
+discussion à propos du message d'erreur <code>Address already in
+use</code>, citant d'autres causes possibles.</a></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ListenBackLog" id="ListenBackLog">ListenBackLog</a> <a name="listenbacklog" id="listenbacklog">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Longueur maximale de la liste d'attente des
+connexions</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ListenBacklog <var>backlog</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ListenBacklog 511</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>La longueur maximale de la liste d'attente des connexions. En
+ général, aucune modification n'est nécessaire, ni même souhaitable ;
+ cependant, sur certains systèmes, il peut être nécessaire
+ d'en augmenter la valeur en cas d'attaque TCP SYN flood (envoi en
+ masse de requêtes SYN pour saturer le serveur). Voir le paramètre
+ backlog de l'appel système <code>listen(2)</code>.</p>
+
+ <p>En fait, l'argument backlog sera souvent limité à une valeur
+ inférieure en fonction du système d'exploitation. Notez aussi que de
+ nombreux systèmes d'exploitation ne tiennent pas vraiment compte de
+ la valeur spécifiée pour l'argument backlog, mais s'en inspirent
+ seulement (et choisissent en général une valeur supérieure).</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="MaxConnectionsPerChild" id="MaxConnectionsPerChild">MaxConnectionsPerChild</a> <a name="maxconnectionsperchild" id="maxconnectionsperchild">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Limite le nombre de connexions qu'un processus enfant va
+traiter au cours de son fonctionnement</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxConnectionsPerChild <var>number</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>MaxConnectionsPerChild 0</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3.9 du serveur HTTP
+Apache. L'ancien nom <code>MaxRequestsPerChild</code> est encore
+supporté.</td></tr>
+</table>
+ <p>La directive <code class="directive">MaxConnectionsPerChild</code> permet de
+ définir le nombre maximum de connexions qu'un processus enfant va
+ pouvoir traiter au cours de son fonctionnement. Lorsqu'il a traité
+ <code class="directive">MaxConnectionsPerChild</code> connexions, le processus
+ enfant est arrêté. Si <code class="directive">MaxConnectionsPerChild</code> est
+ définie à <code>0</code>, il n'y a plus aucune limite sur le nombre
+ de connexions que le processus pourra traiter.</p>
+
+ <p>Définir <code class="directive">MaxConnectionsPerChild</code> à une valeur
+ non nulle limite la quantité de mémoire qu'un processus peut
+ consommer à cause de fuites (accidentelles) de mémoire.</p>
+
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="MaxMemFree" id="MaxMemFree">MaxMemFree</a> <a name="maxmemfree" id="maxmemfree">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Quantité maximale de mémoire que l'allocateur principal est
+autorisé à conserver sans appeler <code>free()</code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxMemFree <var>KOctets</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>MaxMemFree 2048</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code></td></tr>
+</table>
+ <p>La directive <code class="directive">MaxMemFree</code> permet de définir
+ le nombre maximum de KOctets libres que tout allocateur est
+ autorisé à conserver sans appeler <code>free()</code>. Dans les MPMs
+ threadés, chaque thread possède son propre allocateur. Si elle est
+ définie à 0, la quantité de mémoire libre que peut conserver un
+ allocateur est illimitée.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="MaxRequestWorkers" id="MaxRequestWorkers">MaxRequestWorkers</a> <a name="maxrequestworkers" id="maxrequestworkers">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre maximum de connexions pouvant être traitées
+simultanément</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxRequestWorkers <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>La directive <code class="directive">MaxRequestWorkers</code> permet de fixer le
+ nombre maximum de requêtes pouvant être traitées simultanément.
+ Si la limite <code class="directive">MaxRequestWorkers</code> est atteinte, toute
+ tentative de connexion sera normalement mise dans une file
+ d'attente, et ceci jusqu'à un certain nombre dépendant de la
+ directive <code class="directive"><a href="#listenbacklog">ListenBacklog</a></code>.
+ Lorsqu'un processus enfant se libèrera suite à la fin du traitement
+ d'une requête, la connexion en attente pourra être traitée à son
+ tour.</p>
+
+ <p>Pour les serveurs non threadés (<em>c'est à dire</em> utilisant
+ <code class="module"><a href="../mod/prefork.html">prefork</a></code>), la directive
+ <code class="directive">MaxRequestWorkers</code> définit alors le nombre maximum de
+ processus enfants qui pourront être lancés simultanément pour
+ traiter les requêtes. La valeur par défaut est <code>256</code> ; si
+ vous l'augmentez, vous devez aussi augmenter la valeur de la
+ directive <code class="directive"><a href="#serverlimit">ServerLimit</a></code>.</p>
+
+ <p>Pour les serveur threadés et hybrides (utilisant <em>par
+ exemple</em> <code class="module"><a href="../mod/event.html">event</a></code> ou <code class="module"><a href="../mod/worker.html">worker</a></code>),
+ <code class="directive">MaxRequestWorkers</code> définit alors le nombre total de
+ threads qui seront disponibles pour servir les clients. Dans le
+ cas des MPMs hybrides, la valeur par défaut est <code>16</code>
+ (directive <code class="directive"><a href="#serverlimit">ServerLimit</a></code>) multiplié par la valeur
+ <code>25</code> (directive <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>). Par conséquent, pour affecter à la
+ directive <code class="directive">MaxRequestWorkers</code> une valeur qui requiert
+ plus de 16 processus, vous devez aussi augmenter la valeur de la
+ directive <code class="directive"><a href="#serverlimit">ServerLimit</a></code>.</p>
+
+ <p>Le nom de la directive <code class="directive">MaxRequestWorkers</code>
+ était <code class="directive">MaxClients</code> avant la version 2.3.13. Cet
+ ancien nom est encore supporté.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="MaxSpareThreads" id="MaxSpareThreads">MaxSpareThreads</a> <a name="maxsparethreads" id="maxsparethreads">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre maximum de threads inactifs</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxSpareThreads <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>C'est le nombre maximum de threads inactifs. Les MPMs utilisent
+ cette directive de différentes manières.</p>
+
+ <p>Pour <code class="module"><a href="../mod/worker.html">worker</a></code>, la définition par défaut est
+ <code>MaxSpareThreads 250</code>. Ce MPM gère les threads inactifs
+ au niveau du serveur. Si le serveur possède trop de threads
+ inactifs, des processus enfants seront arrêtés jusqu'à ce que le
+ nombre de threads inactifs repasse en dessous de cette limite.</p>
+
+ <p>Pour <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, la définition par défaut est
+ <code>MaxSpareThreads 100</code>. Comme ce MPM n'exécute qu'un seul
+ processus, le nombre de processus inactifs est surveillé au
+ niveau du serveur.</p>
+
+ <p><code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code> fonctionne de manière similaire à
+ <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>. Pour <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, la
+ valeur par défaut est <code>10</code>.</p>
+
+ <div class="note"><h3>Contraintes</h3>
+ <p>La gamme de valeurs pour <code class="directive">MaxSpareThreads</code>
+ est limitée. Apache httpd corrigera automatiquement cette valeur selon
+ les règles suivantes :</p>
+ <ul>
+ <li>Avec <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="directive">MaxSpareThreads</code> doit être supérieure à <code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code>.</li>
+
+ <li>Avec
+ <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="directive">MaxSpareThreads</code>
+ doit être supérieure ou égale à la somme de <code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code> et <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>.</li>
+ </ul>
+ </div>
+
+<h3>Voir aussi</h3>
+<ul>
+<li><code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code></li>
+<li><code class="directive"><a href="#startservers">StartServers</a></code></li>
+<li><code class="directive"><a href="../mod/prefork.html#maxspareservers">MaxSpareServers</a></code></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="MinSpareThreads" id="MinSpareThreads">MinSpareThreads</a> <a name="minsparethreads" id="minsparethreads">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre minimum de threads inactifs qui seront disponibles
+pour pouvoir traiter les pics de requêtes</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MinSpareThreads <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>C'est le nombre minimum de threads inactifs pour être en mesure
+ de traiter les pics de requêtes. Les MPMs utilisent cette directive
+ de différentes manières.</p>
+
+ <p>Avec <code class="module"><a href="../mod/worker.html">worker</a></code>, la définition par défaut est
+ <code>MinSpareThreads 75</code>, et le nombre de threads inactifs
+ est surveillé au niveau du serveur. Si le serveur ne possède pas
+ assez de threads inactifs, des processus enfants sont créés jusqu'à
+ ce que le nombre de threads inactifs repasse au dessus de
+ <var>nombre</var>.</p>
+
+ <p>Avec <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, la définition par défaut est
+ <code>MinSpareThreads 10</code> et, comme ce MPM n'exécute qu'un
+ seul processus, le nombre de threads est surveillé au niveau du
+ serveur.</p>
+
+ <p><code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code> fonctionne de manière similaire à
+ <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>. Pour <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, la
+ valeur par défaut est <code>5</code>.</p>
+
+
+<h3>Voir aussi</h3>
+<ul>
+<li><code class="directive"><a href="#maxsparethreads">MaxSpareThreads</a></code></li>
+<li><code class="directive"><a href="#startservers">StartServers</a></code></li>
+<li><code class="directive"><a href="../mod/prefork.html#minspareservers">MinSpareServers</a></code></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="PidFile" id="PidFile">PidFile</a> <a name="pidfile" id="pidfile">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ficher dans lequel le serveur enregistre l'identificateur
+de processus du démon</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>PidFile <var>nom fichier</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>PidFile logs/httpd.pid</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>La directive <code class="directive">PidFile</code> permet de définir le
+ ficher dans lequel le serveur
+ enregistre l'identificateur de processus du démon. Si le chemin du
+ fichier n'est pas absolu, il est considéré comme relatif au chemin
+ défini par la directive <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>.</p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+ PidFile /var/run/apache.pid
+ </pre>
+</div>
+
+ <p>Il est souvent utile de pouvoir envoyer un signal au
+ serveur afin qu'il ferme et ouvre à nouveau ses journaux
+ d'<code class="directive"><a href="../mod/core.html#erreur">erreur</a></code> et de <code class="directive"><a href="../mod/mod_log_config.html#transfert">transfert</a></code>, et recharge son
+ fichier de configuration. Pour ce faire, on envoie un signal SIGHUP
+ (kill -1) à l'identificateur de processus enregistré dans le fichier
+ défini par la directive <code class="directive">PidFile</code>.</p>
+
+ <p>La directive <code class="directive">PidFile</code> fait l'objet des
+ mêmes avertissements que ceux concernant le chemin d'enregistrement
+ des fichiers journaux et la <a href="../misc/security_tips.html#serverroot">sécurité</a>.</p>
+
+ <div class="note"><h3>Note</h3>
+ <p>Depuis la version 2 du serveur HTTP Apache, nous recommandons de n'utiliser
+ que le script <code class="program"><a href="../programs/apachectl.html">apachectl</a></code>, ou le script de
+ démarrage fourni avec votre système d'exploitation pour (re)démarrer ou
+ arrêter le serveur.</p>
+ </div>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ReceiveBufferSize" id="ReceiveBufferSize">ReceiveBufferSize</a> <a name="receivebuffersize" id="receivebuffersize">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Taille du tampon TCP en entrée</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ReceiveBufferSize <var>octets</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ReceiveBufferSize 0</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Le serveur va fixer la taille du tampon TCP en entrée au
+ nombre d'octets spécifié.</p>
+
+ <p>Si la directive est définie à <code>0</code>, le serveur va
+ utiliser la valeur par défaut adoptée par le système
+ d'exploitation.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ScoreBoardFile" id="ScoreBoardFile">ScoreBoardFile</a> <a name="scoreboardfile" id="scoreboardfile">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Chemin du fichier où sont stockées les données concernant
+la coordination des processus enfants</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ScoreBoardFile <var>chemin fichier</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ScoreBoardFile logs/apache_runtime_status</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Le serveur HTTP Apache utilise un tableau de bord pour la
+ communication entre le processus parent et les processus enfants.
+ Pour faciliter cette communication, certaines architectures
+ nécessitent un fichier. En l'absence de cette directive, donc si
+ aucun nom de fichier n'est spécifié, Apache httpd tentera tout
+ d'abord de créer un tableau uniquement en mémoire (en utilisant la
+ mémoire partagée anonyme) ; et si il n'y parvient pas, il tentera de
+ créer un fichier sur disque (en utilisant la mémoire partagée à base
+ de fichier). Si cette directive est utilisée, Apache httpd créera
+ systématiquement un fichier sur disque.</p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+ ScoreBoardFile /var/run/apache_runtime_status
+ </pre>
+</div>
+
+ <p>Une mémoire partagée sous forme de fichier est utile pour les
+ applications tierses qui nécessitent un accès direct au tableau de
+ bord des processus.</p>
+
+ <p>Si vous utilisez un <code class="directive">ScoreBoardFile</code>, vous
+ pourrez constater une amélioration des performances en le plaçant
+ sur un disque virtuel en RAM. Assurez-vous cependant de tenir compte
+ des mêmes avertissements que ceux concernant le chemin du fichier
+ journal et la <a href="../misc/security_tips.html">sécurité</a>.</p>
+
+<h3>Voir aussi</h3>
+<ul>
+<li><a href="../stopping.html">Arrêter et redémarrer
+le serveur HTTP Apache</a></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="SendBufferSize" id="SendBufferSize">SendBufferSize</a> <a name="sendbuffersize" id="sendbuffersize">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Taille du tampon TCP en sortie</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SendBufferSize <var>octets</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>SendBufferSize 0</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Définit la taille du tampon TCP en sortie avec le nombre
+ d'octets spécifié. Ceci s'avère souvent très utile pour augmenter les
+ valeurs par défaut standards du passé des systèmes d'exploitation
+ pour les transmissions à grande vitesse et haute densité (<em>c'est
+ à dire</em> de l'ordre de 100ms comme sur les liaisons rapides
+ transcontinentales).</p>
+
+ <p>Si la directive est définie à <code>0</code>, le serveur va
+ utiliser la valeur par défaut adoptée par le système
+ d'exploitation.</p>
+
+ <p>L'amélioration des performances des connexions à grande vitesse
+ et à temps de latence élevé, peut nécessiter
+ une intervention au niveau de la configuration de votre système
+ d'exploitation.</p>
+
+ <div class="note"><p>Sous certains systèmes d'exploitation, la modification du
+ comportement TCP via une augmentation de la valeur de
+ <code class="directive">SendBufferSize</code> risque de ne pas être
+ perceptible, si la directive <code class="directive"><a href="../mod/core.html#enablesendfile">EnableSendfile</a></code> n'est pas définie à OFF.
+ Cette interaction ne s'applique qu'aux fichiers statiques.</p> </div>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ServerLimit" id="ServerLimit">ServerLimit</a> <a name="serverlimit" id="serverlimit">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Limite supérieure de la définition du nombre de
+processus</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ServerLimit <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Avec le MPM <code class="module"><a href="../mod/prefork.html">prefork</a></code>, cette directive définit le
+ nombre maximum que l'on peut affecter à la directive <code class="directive"><a href="#maxrequestworkers">MaxRequestWorkers</a></code>, et ceci pour la
+ durée de vie du processus Apache httpd. Avec le
+ MPM <code class="module"><a href="../mod/worker.html">worker</a></code>, cette directive, en combinaison avec
+ <code class="directive"><a href="#threadlimit">ThreadLimit</a></code>, définit le
+ nombre maximum que l'on peut affecter à <code class="directive"><a href="#maxrequestworkers">MaxRequestWorkers</a></code>, et ceci pour la durée de
+ vie du processus Apache httpd. Au cours d'un redémarrage, vous pouvez
+ modifier la valeur de la directive <code class="directive"><a href="#maxrequestworkers">MaxRequestWorkers</a></code>, alors que toute
+ tentative de modification de la valeur de la directive <code class="directive"><a href="#serverlimit">ServerLimit</a></code> sera ignorée.</p>
+
+ <p>Cette directive doit être utilisée avec précaution. Si
+ <code class="directive">ServerLimit</code> est définie à une valeur beaucoup
+ plus grande que nécessaire, de la mémoire partagée supplémentaire
+ sera inutilement allouée. Si à la fois
+ <code class="directive">ServerLimit</code> et <code class="directive"><a href="#maxrequestworkers">MaxRequestWorkers</a></code> possèdent des valeurs
+ supérieures à ce que le système peut supporter, ce dernier peut
+ devenir instable ou Apache httpd peut tout simplement refuser de démarrer.</p>
+
+ <p>Avec le MPM <code class="module"><a href="../mod/prefork.html">prefork</a></code>, n'utilisez cette directive
+ que si vous devez définir <code class="directive"><a href="#maxrequestworkers">MaxRequestWorkers</a></code> à une valeur supérieure à
+ 256 (valeur par défaut). N'affectez pas à la directive <code class="directive"><a href="#serverlimit">ServerLimit</a></code> une valeur supérieure à
+ celle que vous avez prévu d'affecter à la directive <code class="directive"><a href="#maxrequestworkers">MaxRequestWorkers</a></code>.</p>
+
+ <p>Avec <code class="module"><a href="../mod/worker.html">worker</a></code>, n'utilisez cette directive que si
+ la définition de vos directives <code class="directive"><a href="#maxrequestworkers">MaxRequestWorkers</a></code> et <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code> nécessitent plus de
+ 16 processus serveurs (valeur par défaut). N'affectez pas à la
+ directive <code class="directive"><a href="#serverlimit">ServerLimit</a></code> une
+ valeur supérieure au nombre de processus requis pour la définition
+ des directives <code class="directive"><a href="#maxrequestworkers ">MaxRequestWorkers
+ </a></code> et <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>.</p>
+
+ <div class="note"><h3>Note</h3>
+ <p>Il existe une limite de <code>ServerLimit 20000</code> codée en
+ dur dans le serveur (200000 pour le MPM <code class="module"><a href="../mod/prefork.html">prefork</a></code>).
+ Ceci est censé éviter les effets désastreux que pourrait provoquer
+ une faute de frappe. Pour dépasser cette limite, vous devez
+ modifier la valeur de MAX_SERVER_LIMIT dans le fichier source du
+ mpm et recompiler le serveur.</p>
+ </div>
+
+<h3>Voir aussi</h3>
+<ul>
+<li><a href="../stopping.html">Arrêter et redémarrer
+le serveur HTTP Apache</a></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="StartServers" id="StartServers">StartServers</a> <a name="startservers" id="startservers">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de processus enfants du serveur créés au
+démarrage</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>StartServers <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>La directive <code class="directive">StartServers</code> permet de
+ définir le nombre de processus enfants du serveur créés au
+ démarrage. Comme le nombre de processus est contrôlé dynamiquement
+ en fonction de la charge (voir <code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code>, <code class="directive"><a href="#maxsparethreads">MaxSpareThreads</a></code>, <code class="directive"><a href="../mod/prefork.html#minspareservers">MinSpareServers</a></code>, <code class="directive"><a href="../mod/prefork.html#maxspareservers">MaxSpareServers</a></code>), il n'est en général
+ pas nécessaire d'ajuster ce paramètre.</p>
+
+ <p>La valeur par défaut diffère d'un MPM à l'autre. Pour
+ <code class="module"><a href="../mod/worker.html">worker</a></code>, la définition par défaut est
+ <code>StartServers 3</code> ; la valeur par défaut est
+ <code>5</code> pour <code class="module"><a href="../mod/prefork.html">prefork</a></code> et <code>2</code>
+ pour <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="StartThreads" id="StartThreads">StartThreads</a> <a name="startthreads" id="startthreads">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de threads créés au démarrage</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>StartThreads <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code></td></tr>
+</table>
+ <p>C'est le nombre de threads créés au démarrage du serveur. Comme
+ le nombre de threads est contrôlé dynamiquement
+ en fonction de la charge (voir <code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code>, <code class="directive"><a href="#maxsparethreads">MaxSpareThreads</a></code>, <code class="directive"><a href="../mod/prefork.html#minspareservers">MinSpareServers</a></code>, <code class="directive"><a href="../mod/prefork.html#maxspareservers">MaxSpareServers</a></code>), il n'est en général
+ pas nécessaire d'ajuster ce paramètre.</p>
+
+ <p>Pour <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, la définition par défaut est
+ <code>StartThreads 50</code> et, comme il n'y a qu'un processus, il
+ s'agit du nombre total de threads créés au démarrage pour servir les
+ requêtes.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ThreadLimit" id="ThreadLimit">ThreadLimit</a> <a name="threadlimit" id="threadlimit">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le nombre de threads maximum que l'on peut définir par
+processus enfant</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ThreadLimit <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Cette directive permet de définir le nombre maximum que l'on peut
+ affecter à la directive <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code> pour la durée de vie
+ du processus Apache httpd. La directive <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code> peut être modifiée
+ au cours d'un redémarrage jusqu'à la valeur de la directive <code class="directive"><a href="#threadlimit">ThreadLimit</a></code>, mais toute tentative
+ de modification de la directive <code class="directive"><a href="#threadlimit">ThreadLimit</a></code> au cours d'un
+ redémarrage sera ignorée.</p>
+
+ <p>L'utilisation de cette directive doit faire l'objet de
+ précautions particulières. Si <code class="directive">ThreadLimit</code> est
+ définie à une valeur très supérieure à la directive <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>, de la mémoire
+ partagée supplémentaire sera inutilement allouée. Si les directives
+ <code class="directive">ThreadLimit</code> et <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code> sont définies à des
+ valeurs supérieures à ce que le système peut supporter, ce dernier
+ peut devenir instable, ou Apache httpd peut tout simplement refuser de
+ démarrer. Ne définissez pas cette directive à une valeur supérieure
+ à la valeur maximale que vous pensez affecter à la directive <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code> pour le processus
+ Apache httpd en cours d'exécution.</p>
+
+ <p>La valeur par défaut de la directive
+ <code class="directive">ThreadLimit</code> est <code>1920</code> avec
+ <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, et <code>64</code> avec les autres
+ MPMs.</p>
+
+ <div class="note"><h3>Note</h3>
+ <p>Il existe une limite de <code>ThreadLimit 20000</code> (ou
+ <code>ThreadLimit 15000</code> avec <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>)
+ codée en dur dans le serveur. Ceci est censé éviter les effets
+ désastreux que pourrait provoquer une faute de frappe. Pour
+ dépasser cette limite, vous devez modifier la valeur de
+ MAX_THREAD_LIMIT dans le fichier source du mpm et recompiler le
+ serveur.</p>
+ </div>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ThreadsPerChild" id="ThreadsPerChild">ThreadsPerChild</a> <a name="threadsperchild" id="threadsperchild">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de threads créés par chaque processus
+enfant</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ThreadsPerChild <var>nombre</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>Voir ci-dessous pour plus de détails</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
+</table>
+ <p>Cette directive permet de définir le nombre de threads que va
+ créer chaque processus enfant. Un processus enfant crée ces threads
+ au démarrage et n'en crée plus d'autres par la suite. Si l'on
+ utilise un MPM comme <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code> qui ne lance qu'un
+ processus enfant, ce nombre doit être suffisamment grand pour
+ supporter la charge du serveur. Avec un MPM comme
+ <code class="module"><a href="../mod/worker.html">worker</a></code> qui lance plusieurs processus enfants, c'est
+ le nombre <em>total</em> de threads qui doit être suffisamment grand
+ pour supporter la charge du serveur.</p>
+
+ <p>La valeur par défaut de la directive
+ <code class="directive">ThreadsPerChild</code> est <code>64</code> avec
+ <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, et <code>25</code> avec les autres
+ MPMs.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ThreadStackSize" id="ThreadStackSize">ThreadStackSize</a> <a name="threadstacksize" id="threadstacksize">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>La taille en octets de la pile qu'utilisent les threads qui
+traitent les connexions clients</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ThreadStackSize <var>taille</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>65536 sous NetWare; varie en fonction des autres systèmes
+d'exploitation</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/event.html">event</a></code></td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible dans les versions 2.1 et supérieures
+du serveur HTTP Apache</td></tr>
+</table>
+ <p>La directive <code class="directive">ThreadStackSize</code> permet de
+ définir la taille de la pile (pour les données propres) qu'utilisent
+ les threads qui traitent les connexions clients en faisant appel à
+ des modules. Dans la plupart des cas, la valeur par défaut de la
+ taille de la pile du système d'exploitation convient, mais il existe
+ certaines situations où il peut s'avérer nécessaire de l'ajuster
+ :</p>
+
+ <ul>
+ <li>Sur les plates-formes qui possèdent une valeur par défaut de
+ taille de la pile relativement petite (par exemple HP-UX), Apache
+ httpd peut se crasher si l'on utilise certains modules tiers qui
+ possèdent un quantité de données propres stockées relativement
+ importante. Il se peut que ces mêmes modules fonctionnent
+ correctement sur d'autres plate-formes où la valeur par défaut de
+ la taille de la pile est supérieure. Ce type de crash peut être
+ evité en définissant <code class="directive">ThreadStackSize</code> à une
+ valeur supérieure à la valeur par défaut du système
+ d'exploitation. Ce type d'ajustement n'est nécessaire que si le
+ fournisseur du module tiers en fait mention, ou si le diagnostic
+ d'un crash d'Apache httpd indique que la taille de la pile était trop
+ petite.</li>
+
+ <li>Sur les plates-formes où la taille par défaut de la pile des
+ threads est sensiblement supérieure à la taille nécessaire pour la
+ configuration du serveur web, il est possible de disposer d'un
+ plus grand nombre de threads par processus enfant si la directive
+ <code class="directive">ThreadStackSize</code> est définie à une valeur
+ inférieure à la valeur par défaut du système d'exploitation.
+ Cependant, ce
+ type d'ajustement ne doit être effectué que dans un environnement
+ de test permettant de qualifier le serveur web au maximum de ses
+ possibilités, car il peut arriver, dans de rares cas, que des
+ requêtes nécessitent une taille de pile supérieure pour pouvoir
+ être traitées. La taille minimale requise pour la pile dépend
+ fortement des modules utilisés, mais toute modification dans la
+ configuration du serveur web peut invalider la définition courante
+ de la directive <code class="directive">ThreadStackSize</code>.</li>
+
+ <li>Sous Linux, cette directive ne peut être utilisée que pour
+ augmenter la valeur par defaut de la taille de la pile, car
+ l'appel système sous-jacent utilise cette valeur comme taille de pile
+ <em>minimale</em>. C'est la limite logicielle (souvent élevée)
+ pour <code>ulimit -s</code> (8Mo si aucune limite) qui est
+ utilisée comme taille de pile par défaut.</li>
+ </ul>
+
+ <div class="note">Il est recommandé de ne pas réduire
+ <code class="directive">ThreadStackSize</code>, à moins qu'un grand nombre
+ de threads par processus enfant ne soit nécessaire. Sur certaines
+ plates-formes (y compris Linux), une valeur de 128000 est déjà trop
+ basse et provoque des crashes avec certains modules courants.</div>
+
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../de/mod/mpm_common.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
+<a href="../en/mod/mpm_common.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mpm_common.html" title="Français"> fr </a> |
+<a href="../ja/mod/mpm_common.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../tr/mod/mpm_common.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
+</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mpm_common.html';
+(function(w, d) {
+ if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+ d.write('<div id="comments_thread"><\/div>');
+ var s = d.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+ (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+ }
+ else {
+ d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+ }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2012 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+ prettyPrint();
+}
+//--><!]]></script>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
+<!-- English Revision : 1421892 -->
+<!-- French translation : Lucien GENTIS -->
+<!-- Reviewed by : Vincent Deffontaines -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mpm_common.xml.meta">
+
+<name>mpm_common</name>
+<description>Une série de directives implémentées par plusieurs
+modules multi-processus (MPM)</description>
+<status>MPM</status>
+
+<directivesynopsis>
+<name>CoreDumpDirectory</name>
+<description>Le répertoire dans lequel le serveur HTTP Apache va tenter de se
+positionner avant d'effectuer un vidage mémoire</description>
+<syntax>CoreDumpDirectory <var>répertoire</var></syntax>
+<default>Voir ci-dessous pour le répertoire par défaut</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>prefork</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>Cette directive permet de définir le répertoire dans lequel
+ Apache httpd va tenter de se positionner avant d'effectuer un vidage
+ mémoire sur disque.
+ Si votre système d'exploitation est configuré pour créer des
+ fichiers de vidage mémoire dans le répertoire de travail des
+ processus qui se sont crashés,
+ <directive>CoreDumpDirectory</directive> est nécessaire pour
+ définir un répertoire de travail autre que le répertoire par défaut
+ <directive module="core">ServerRoot</directive>, ce répertoire de
+ travail ne devant pas être accessible en écriture par l'utilisateur sous
+ lequel le serveur s'exécute.</p>
+
+ <p>Si vous avez besoin d'un vidage mémoire pour le débogage, vous
+ pouvez utiliser cette directive pour le placer à un endroit
+ différent. Cette directive n'a aucun effet si votre système
+ d'exploitation n'est pas configuré pour créer des
+ fichiers de vidage mémoire dans le répertoire de travail des
+ processus qui se sont crashés.</p>
+
+ <note><title>Vidages mémoire sous Linux</title>
+ <p>Si Apache httpd est démarré sous l'utilisateur root puis bascule vers
+ un autre utilisateur, le noyau Linux <em>désactive</em> les
+ vidages mémoire, même si le répertoire est accessible en écriture au
+ processus. Apache httpd (versions 2.0.46 et supérieures) réactive les
+ vidages mémoire sous Linux 2.4 et au delà, mais seulement si vous
+ définissez une directive <directive>CoreDumpDirectory</directive>.</p>
+ </note>
+
+ <note>
+ <title>Vidages mémoire sous BSD</title>
+ <p>Pour activer le vidage mémoire des exécutables suid sur les
+ systèmes de style BSD (comme FreeBSD), définissez
+ <code>kern.sugid_coredump</code> à 1.
+ </p>
+ </note>
+
+ <note><title>Signaux spécifiques</title>
+ <p><directive>CoreDumpDirectory</directive> n'est traité qu'à la
+ reception d'un certain nombre de signaux , SIGFPE, SIGILL, SIGABORT,
+ SIGSEGV, et SIGBUS.</p>
+ <p>
+ Sur certains systèmes d'exploitation, SIGQUIT provoque aussi un
+ vidage mémoire, mais n'est pas traité par les directives
+ <directive>CoreDumpDirectory</directive> ou
+ <directive>EnableExceptionHook</directive>, si bien que la
+ définition du répertoire d'enregistrement du vidage mémoire est
+ entièrement dévolue au système d'exploitation.</p>
+ </note>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>EnableExceptionHook</name>
+<description>Active un hook ("point d'accrochage logiciel") qui exécute des
+gestionnaires d'exception après un crash</description>
+<syntax>EnableExceptionHook On|Off</syntax>
+<default>EnableExceptionHook Off</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist>
+<module>event</module><module>prefork</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>Pour des raisons de sécurité, cette directive n'est disponible
+ que si la compilation du serveur a été configurée avec l'option
+ <code>--enable-exception-hook</code>. Elle permet d'activer un hook
+ ("point d'accrochage logiciel")
+ qui autorise certains modules externes à effectuer un branchement et
+ accomplir telle ou telle action après le crash d'un processus
+ enfant.</p>
+
+ <p>Deux modules, <code>mod_whatkilledus</code> et
+ <code>mod_backtrace</code> utilisent ce hook. Veuillez vous
+ référer à la <a
+ href="http://people.apache.org/~trawick/exception_hook.html"
+ >page EnableExceptionHook</a> de Jeff Trawick pour plus
+ d'informations à leur sujet.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>GracefulShutdownTimeout</name>
+<description>Spécifie le délai maximum après lequel le serveur va
+s'arrêter dans le cas d'un arrêt "en douceur"</description>
+<syntax>GracefulShutDownTimeout <var>secondes</var></syntax>
+<default>GracefulShutDownTimeout 0</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>prefork</module><module>worker</module>
+<module>event</module></modulelist>
+<compatibility>Disponible dans les versions 2.2 et supérieures</compatibility>
+
+<usage>
+ <p>La directive <directive>GracefulShutdownTimeout</directive>
+ permet de spécifier le temps, en secondes, pendant lequel le serveur
+ va continuer à fonctionner après avoir reçu un signal
+ "graceful-stop" ("Arrêt en douceur"), afin de terminer le traitement
+ des connexions en cours.</p>
+
+ <p>Définir cette valeur à zéro signifie au serveur d'attendre
+ jusqu'à ce que toutes les requêtes en cours aient été traitées.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>PidFile</name>
+<description>Ficher dans lequel le serveur enregistre l'identificateur
+de processus du démon</description>
+<syntax>PidFile <var>nom fichier</var></syntax>
+<default>PidFile logs/httpd.pid</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_winnt</module>
+<module>mpmt_os2</module><module>prefork</module><module>worker</module>
+</modulelist>
+
+<usage>
+ <p>La directive <directive>PidFile</directive> permet de définir le
+ ficher dans lequel le serveur
+ enregistre l'identificateur de processus du démon. Si le chemin du
+ fichier n'est pas absolu, il est considéré comme relatif au chemin
+ défini par la directive <directive
+ module="core">ServerRoot</directive>.</p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+ PidFile /var/run/apache.pid
+ </highlight>
+ </example>
+
+ <p>Il est souvent utile de pouvoir envoyer un signal au
+ serveur afin qu'il ferme et ouvre à nouveau ses journaux
+ d'<directive module="core">erreur</directive> et de <directive
+ module="mod_log_config">transfert</directive>, et recharge son
+ fichier de configuration. Pour ce faire, on envoie un signal SIGHUP
+ (kill -1) à l'identificateur de processus enregistré dans le fichier
+ défini par la directive <directive>PidFile</directive>.</p>
+
+ <p>La directive <directive>PidFile</directive> fait l'objet des
+ mêmes avertissements que ceux concernant le chemin d'enregistrement
+ des fichiers journaux et la <a
+ href="../misc/security_tips.html#serverroot">sécurité</a>.</p>
+
+ <note><title>Note</title>
+ <p>Depuis la version 2 du serveur HTTP Apache, nous recommandons de n'utiliser
+ que le script <program>apachectl</program>, ou le script de
+ démarrage fourni avec votre système d'exploitation pour (re)démarrer ou
+ arrêter le serveur.</p>
+ </note>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>Listen</name>
+<description>Les adresses IP et ports sur lesquels le serveur écoute</description>
+<syntax>Listen [<var>adresse IP</var>:]<var>numéro port</var>
+[<var>protocole</var>]</syntax>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>mpm_netware</module><module>mpm_winnt</module>
+<module>mpmt_os2</module>
+<module>prefork</module><module>worker</module>
+<module>event</module>
+</modulelist>
+<compatibility>L'argument <var>protocole</var> est supporté depuis la version
+2.1.5</compatibility>
+
+<usage>
+ <p>La directive <directive>Listen</directive> permet de signifier à
+ Apache httpd de ne se mettre à l'écoute que sur les adresses IP et ports spécifiés ; par
+ défaut, le serveur répond aux requêtes en provenance de toutes les
+ interfaces réseau. La directive <directive>Listen</directive> est
+ dorénavant requise, et si elle est absente du fichier de
+ configuration, le serveur refusera de démarrer. Ceci constitue un
+ changement par rapport aux versions précédentes d'Apache httpd.</p>
+
+ <p>La directive <directive>Listen</directive> signifie au serveur de
+ n'accepter les requêtes entrantes que vers le port ou le couple
+ adresse-port spécifié. Si seulement un port est spécifié, le serveur
+ se met à l'écoute sur ce port sur toutes les interfaces réseau. Si une adresse IP
+ et un port sont spécifiés, le serveur va se mettre à l'écoute sur ce port sur
+ l'interface réseau correspondant à l'adresse IP.</p>
+
+ <p>On peut utiliser autant de directives
+ <directive>Listen</directive> que nécessaire pour spécifier
+ plusieurs adresses et/ou ports à écouter. Le serveur répondra aux
+ requêtes vers tous les adresses et ports spécifiés.</p>
+
+ <p>Par exemple, pour que le serveur accepte les connexions sur les
+ ports 80 et 8000, utilisez :</p>
+
+ <highlight language="config">
+Listen 80
+Listen 8000
+ </highlight>
+
+ <p>Pour que la serveur accepte les connexions sur deux interfaces et
+ ports particuliers, spécifiez :</p>
+
+ <highlight language="config">
+Listen 192.170.2.1:80
+Listen 192.170.2.5:8000
+ </highlight>
+
+ <p>Les adressee IPv6 doivent être entourées de crochets, comme dans
+ l'exemple suivant :</p>
+
+ <highlight language="config">
+ Listen [2001:db8::a00:20ff:fea7:ccea]:80
+ </highlight>
+
+ <p>L'argument optionnel <var>protocole</var> n'est pas nécessaire
+ dans la plupart des configurations. S'il est absent,
+ <code>https</code> est la valeur par défaut pour le port 443 et
+ <code>http</code> l'est pour tous les autres ports. L'argument
+ protocole sert à déterminer quel module doit traiter une requête, et
+ à appliquer des optimisations spécifiques à certains protocoles à
+ l'aide de la directive <directive
+ module="core">AcceptFilter</directive>.</p>
+
+ <p>La spécification d'un protocole n'est nécessaire que si vous
+ utilisez des ports non standards. Par exemple, pour configurer un
+ site en <code>https</code> sur le port 8443 :</p>
+
+ <highlight language="config">
+ Listen 192.170.2.1:8443 https
+ </highlight>
+
+ <note><title>Condition d'erreur</title>
+ Plusieurs directives <directive>Listen</directive> pour les mêmes
+ adresse IP/port vont provoquer l'envoi d'un message d'erreur
+ <code>Address already in use</code>.
+ </note>
+
+</usage>
+<seealso><a href="../dns-caveats.html">Problèmes avec DNS</a></seealso>
+<seealso><a href="../bind.html">Définition des adresses et ports
+qu'utilise le serveur HTTP Apache</a></seealso>
+<seealso><a
+href="http://wiki.apache.org/httpd/CouldNotBindToAddress">Autre
+discussion à propos du message d'erreur <code>Address already in
+use</code>, citant d'autres causes possibles.</a></seealso>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ListenBackLog</name>
+<description>Longueur maximale de la liste d'attente des
+connexions</description>
+<syntax>ListenBacklog <var>backlog</var></syntax>
+<default>ListenBacklog 511</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist>
+<module>event</module>
+<module>mpm_netware</module><module>mpm_winnt</module>
+<module>mpmt_os2</module><module>prefork</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>La longueur maximale de la liste d'attente des connexions. En
+ général, aucune modification n'est nécessaire, ni même souhaitable ;
+ cependant, sur certains systèmes, il peut être nécessaire
+ d'en augmenter la valeur en cas d'attaque TCP SYN flood (envoi en
+ masse de requêtes SYN pour saturer le serveur). Voir le paramètre
+ backlog de l'appel système <code>listen(2)</code>.</p>
+
+ <p>En fait, l'argument backlog sera souvent limité à une valeur
+ inférieure en fonction du système d'exploitation. Notez aussi que de
+ nombreux systèmes d'exploitation ne tiennent pas vraiment compte de
+ la valeur spécifiée pour l'argument backlog, mais s'en inspirent
+ seulement (et choisissent en général une valeur supérieure).</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>MaxRequestWorkers</name>
+<description>Nombre maximum de connexions pouvant être traitées
+simultanément</description>
+<syntax>MaxRequestWorkers <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>prefork</module>
+<module>worker</module>
+</modulelist>
+
+<usage>
+ <p>La directive <directive>MaxRequestWorkers</directive> permet de fixer le
+ nombre maximum de requêtes pouvant être traitées simultanément.
+ Si la limite <directive>MaxRequestWorkers</directive> est atteinte, toute
+ tentative de connexion sera normalement mise dans une file
+ d'attente, et ceci jusqu'à un certain nombre dépendant de la
+ directive <directive module="mpm_common">ListenBacklog</directive>.
+ Lorsqu'un processus enfant se libèrera suite à la fin du traitement
+ d'une requête, la connexion en attente pourra être traitée à son
+ tour.</p>
+
+ <p>Pour les serveurs non threadés (<em>c'est à dire</em> utilisant
+ <module>prefork</module>), la directive
+ <directive>MaxRequestWorkers</directive> définit alors le nombre maximum de
+ processus enfants qui pourront être lancés simultanément pour
+ traiter les requêtes. La valeur par défaut est <code>256</code> ; si
+ vous l'augmentez, vous devez aussi augmenter la valeur de la
+ directive <directive
+ module="mpm_common">ServerLimit</directive>.</p>
+
+ <p>Pour les serveur threadés et hybrides (utilisant <em>par
+ exemple</em> <module>event</module> ou <module>worker</module>),
+ <directive>MaxRequestWorkers</directive> définit alors le nombre total de
+ threads qui seront disponibles pour servir les clients. Dans le
+ cas des MPMs hybrides, la valeur par défaut est <code>16</code>
+ (directive <directive
+ module="mpm_common">ServerLimit</directive>) multiplié par la valeur
+ <code>25</code> (directive <directive module="mpm_common"
+ >ThreadsPerChild</directive>). Par conséquent, pour affecter à la
+ directive <directive>MaxRequestWorkers</directive> une valeur qui requiert
+ plus de 16 processus, vous devez aussi augmenter la valeur de la
+ directive <directive module="mpm_common"
+ >ServerLimit</directive>.</p>
+
+ <p>Le nom de la directive <directive>MaxRequestWorkers</directive>
+ était <directive>MaxClients</directive> avant la version 2.3.13. Cet
+ ancien nom est encore supporté.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>MaxMemFree</name>
+<description>Quantité maximale de mémoire que l'allocateur principal est
+autorisé à conserver sans appeler <code>free()</code></description>
+<syntax>MaxMemFree <var>KOctets</var></syntax>
+<default>MaxMemFree 2048</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_netware</module>
+<module>prefork</module><module>worker</module><module>mpm_winnt</module>
+</modulelist>
+
+<usage>
+ <p>La directive <directive>MaxMemFree</directive> permet de définir
+ le nombre maximum de KOctets libres que tout allocateur est
+ autorisé à conserver sans appeler <code>free()</code>. Dans les MPMs
+ threadés, chaque thread possède son propre allocateur. Si elle est
+ définie à 0, la quantité de mémoire libre que peut conserver un
+ allocateur est illimitée.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>MaxConnectionsPerChild</name>
+<description>Limite le nombre de connexions qu'un processus enfant va
+traiter au cours de son fonctionnement</description>
+<syntax>MaxConnectionsPerChild <var>number</var></syntax>
+<default>MaxConnectionsPerChild 0</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_netware</module>
+<module>mpm_winnt</module><module>mpmt_os2</module>
+<module>prefork</module><module>worker</module></modulelist>
+<compatibility>Disponible depuis la version 2.3.9 du serveur HTTP
+Apache. L'ancien nom <code>MaxRequestsPerChild</code> est encore
+supporté.</compatibility>
+
+<usage>
+ <p>La directive <directive>MaxConnectionsPerChild</directive> permet de
+ définir le nombre maximum de connexions qu'un processus enfant va
+ pouvoir traiter au cours de son fonctionnement. Lorsqu'il a traité
+ <directive>MaxConnectionsPerChild</directive> connexions, le processus
+ enfant est arrêté. Si <directive>MaxConnectionsPerChild</directive> est
+ définie à <code>0</code>, il n'y a plus aucune limite sur le nombre
+ de connexions que le processus pourra traiter.</p>
+
+ <p>Définir <directive>MaxConnectionsPerChild</directive> à une valeur
+ non nulle limite la quantité de mémoire qu'un processus peut
+ consommer à cause de fuites (accidentelles) de mémoire.</p>
+
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>MaxSpareThreads</name>
+<description>Nombre maximum de threads inactifs</description>
+<syntax>MaxSpareThreads <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_netware</module>
+<module>mpmt_os2</module><module>worker</module></modulelist>
+
+<usage>
+ <p>C'est le nombre maximum de threads inactifs. Les MPMs utilisent
+ cette directive de différentes manières.</p>
+
+ <p>Pour <module>worker</module>, la définition par défaut est
+ <code>MaxSpareThreads 250</code>. Ce MPM gère les threads inactifs
+ au niveau du serveur. Si le serveur possède trop de threads
+ inactifs, des processus enfants seront arrêtés jusqu'à ce que le
+ nombre de threads inactifs repasse en dessous de cette limite.</p>
+
+ <p>Pour <module>mpm_netware</module>, la définition par défaut est
+ <code>MaxSpareThreads 100</code>. Comme ce MPM n'exécute qu'un seul
+ processus, le nombre de processus inactifs est surveillé au
+ niveau du serveur.</p>
+
+ <p><module>mpmt_os2</module> fonctionne de manière similaire à
+ <module>mpm_netware</module>. Pour <module>mpmt_os2</module>, la
+ valeur par défaut est <code>10</code>.</p>
+
+ <note><title>Contraintes</title>
+ <p>La gamme de valeurs pour <directive>MaxSpareThreads</directive>
+ est limitée. Apache httpd corrigera automatiquement cette valeur selon
+ les règles suivantes :</p>
+ <ul>
+ <li>Avec <module>mpm_netware</module>, <directive
+ >MaxSpareThreads</directive> doit être supérieure à <directive
+ module="mpm_common">MinSpareThreads</directive>.</li>
+
+ <li>Avec
+ <module>worker</module>, <directive>MaxSpareThreads</directive>
+ doit être supérieure ou égale à la somme de <directive
+ module="mpm_common">MinSpareThreads</directive> et <directive
+ module="mpm_common">ThreadsPerChild</directive>.</li>
+ </ul>
+ </note>
+</usage>
+<seealso><directive module="mpm_common">MinSpareThreads</directive></seealso>
+<seealso><directive module="mpm_common">StartServers</directive></seealso>
+<seealso><directive module="prefork">MaxSpareServers</directive></seealso>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>MinSpareThreads</name>
+<description>Nombre minimum de threads inactifs qui seront disponibles
+pour pouvoir traiter les pics de requêtes</description>
+<syntax>MinSpareThreads <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_netware</module>
+<module>mpmt_os2</module><module>worker</module></modulelist>
+
+<usage>
+ <p>C'est le nombre minimum de threads inactifs pour être en mesure
+ de traiter les pics de requêtes. Les MPMs utilisent cette directive
+ de différentes manières.</p>
+
+ <p>Avec <module>worker</module>, la définition par défaut est
+ <code>MinSpareThreads 75</code>, et le nombre de threads inactifs
+ est surveillé au niveau du serveur. Si le serveur ne possède pas
+ assez de threads inactifs, des processus enfants sont créés jusqu'à
+ ce que le nombre de threads inactifs repasse au dessus de
+ <var>nombre</var>.</p>
+
+ <p>Avec <module>mpm_netware</module>, la définition par défaut est
+ <code>MinSpareThreads 10</code> et, comme ce MPM n'exécute qu'un
+ seul processus, le nombre de threads est surveillé au niveau du
+ serveur.</p>
+
+ <p><module>mpmt_os2</module> fonctionne de manière similaire à
+ <module>mpm_netware</module>. Pour <module>mpmt_os2</module>, la
+ valeur par défaut est <code>5</code>.</p>
+
+</usage>
+<seealso><directive module="mpm_common">MaxSpareThreads</directive></seealso>
+<seealso><directive module="mpm_common">StartServers</directive></seealso>
+<seealso><directive module="prefork">MinSpareServers</directive></seealso>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ScoreBoardFile</name>
+<description>Chemin du fichier où sont stockées les données concernant
+la coordination des processus enfants</description>
+<syntax>ScoreBoardFile <var>chemin fichier</var></syntax>
+<default>ScoreBoardFile logs/apache_runtime_status</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_winnt</module>
+<module>prefork</module><module>worker</module></modulelist>
+
+<usage>
+ <p>Le serveur HTTP Apache utilise un tableau de bord pour la
+ communication entre le processus parent et les processus enfants.
+ Pour faciliter cette communication, certaines architectures
+ nécessitent un fichier. En l'absence de cette directive, donc si
+ aucun nom de fichier n'est spécifié, Apache httpd tentera tout
+ d'abord de créer un tableau uniquement en mémoire (en utilisant la
+ mémoire partagée anonyme) ; et si il n'y parvient pas, il tentera de
+ créer un fichier sur disque (en utilisant la mémoire partagée à base
+ de fichier). Si cette directive est utilisée, Apache httpd créera
+ systématiquement un fichier sur disque.</p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+ ScoreBoardFile /var/run/apache_runtime_status
+ </highlight>
+ </example>
+
+ <p>Une mémoire partagée sous forme de fichier est utile pour les
+ applications tierses qui nécessitent un accès direct au tableau de
+ bord des processus.</p>
+
+ <p>Si vous utilisez un <directive>ScoreBoardFile</directive>, vous
+ pourrez constater une amélioration des performances en le plaçant
+ sur un disque virtuel en RAM. Assurez-vous cependant de tenir compte
+ des mêmes avertissements que ceux concernant le chemin du fichier
+ journal et la <a
+ href="../misc/security_tips.html">sécurité</a>.</p>
+</usage>
+<seealso><a href="../stopping.html">Arrêter et redémarrer
+le serveur HTTP Apache</a></seealso>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ReceiveBufferSize</name>
+<description>Taille du tampon TCP en entrée</description>
+<syntax>ReceiveBufferSize <var>octets</var></syntax>
+<default>ReceiveBufferSize 0</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_netware</module>
+<module>mpm_winnt</module><module>mpmt_os2</module><module>prefork</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>Le serveur va fixer la taille du tampon TCP en entrée au
+ nombre d'octets spécifié.</p>
+
+ <p>Si la directive est définie à <code>0</code>, le serveur va
+ utiliser la valeur par défaut adoptée par le système
+ d'exploitation.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>SendBufferSize</name>
+<description>Taille du tampon TCP en sortie</description>
+<syntax>SendBufferSize <var>octets</var></syntax>
+<default>SendBufferSize 0</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_netware</module>
+<module>mpm_winnt</module><module>mpmt_os2</module><module>prefork</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>Définit la taille du tampon TCP en sortie avec le nombre
+ d'octets spécifié. Ceci s'avère souvent très utile pour augmenter les
+ valeurs par défaut standards du passé des systèmes d'exploitation
+ pour les transmissions à grande vitesse et haute densité (<em>c'est
+ à dire</em> de l'ordre de 100ms comme sur les liaisons rapides
+ transcontinentales).</p>
+
+ <p>Si la directive est définie à <code>0</code>, le serveur va
+ utiliser la valeur par défaut adoptée par le système
+ d'exploitation.</p>
+
+ <p>L'amélioration des performances des connexions à grande vitesse
+ et à temps de latence élevé, peut nécessiter
+ une intervention au niveau de la configuration de votre système
+ d'exploitation.</p>
+
+ <note><p>Sous certains systèmes d'exploitation, la modification du
+ comportement TCP via une augmentation de la valeur de
+ <directive>SendBufferSize</directive> risque de ne pas être
+ perceptible, si la directive <directive
+ module="core">EnableSendfile</directive> n'est pas définie à OFF.
+ Cette interaction ne s'applique qu'aux fichiers statiques.</p> </note>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ServerLimit</name>
+<description>Limite supérieure de la définition du nombre de
+processus</description>
+<syntax>ServerLimit <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>prefork</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>Avec le MPM <module>prefork</module>, cette directive définit le
+ nombre maximum que l'on peut affecter à la directive <directive
+ module="mpm_common">MaxRequestWorkers</directive>, et ceci pour la
+ durée de vie du processus Apache httpd. Avec le
+ MPM <module>worker</module>, cette directive, en combinaison avec
+ <directive module="mpm_common">ThreadLimit</directive>, définit le
+ nombre maximum que l'on peut affecter à <directive
+ module="mpm_common">MaxRequestWorkers</directive>, et ceci pour la durée de
+ vie du processus Apache httpd. Au cours d'un redémarrage, vous pouvez
+ modifier la valeur de la directive <directive
+ module="mpm_common">MaxRequestWorkers</directive>, alors que toute
+ tentative de modification de la valeur de la directive <directive
+ module="mpm_common">ServerLimit</directive> sera ignorée.</p>
+
+ <p>Cette directive doit être utilisée avec précaution. Si
+ <directive>ServerLimit</directive> est définie à une valeur beaucoup
+ plus grande que nécessaire, de la mémoire partagée supplémentaire
+ sera inutilement allouée. Si à la fois
+ <directive>ServerLimit</directive> et <directive
+ module="mpm_common">MaxRequestWorkers</directive> possèdent des valeurs
+ supérieures à ce que le système peut supporter, ce dernier peut
+ devenir instable ou Apache httpd peut tout simplement refuser de démarrer.</p>
+
+ <p>Avec le MPM <module>prefork</module>, n'utilisez cette directive
+ que si vous devez définir <directive
+ module="mpm_common">MaxRequestWorkers</directive> à une valeur supérieure à
+ 256 (valeur par défaut). N'affectez pas à la directive <directive
+ module="mpm_common">ServerLimit</directive> une valeur supérieure à
+ celle que vous avez prévu d'affecter à la directive <directive
+ module="mpm_common">MaxRequestWorkers</directive>.</p>
+
+ <p>Avec <module>worker</module>, n'utilisez cette directive que si
+ la définition de vos directives <directive
+ module="mpm_common">MaxRequestWorkers</directive> et <directive
+ module="mpm_common">ThreadsPerChild</directive> nécessitent plus de
+ 16 processus serveurs (valeur par défaut). N'affectez pas à la
+ directive <directive module="mpm_common">ServerLimit</directive> une
+ valeur supérieure au nombre de processus requis pour la définition
+ des directives <directive module="mpm_common">MaxRequestWorkers
+ </directive> et <directive
+ module="mpm_common">ThreadsPerChild</directive>.</p>
+
+ <note><title>Note</title>
+ <p>Il existe une limite de <code>ServerLimit 20000</code> codée en
+ dur dans le serveur (200000 pour le MPM <module>prefork</module>).
+ Ceci est censé éviter les effets désastreux que pourrait provoquer
+ une faute de frappe. Pour dépasser cette limite, vous devez
+ modifier la valeur de MAX_SERVER_LIMIT dans le fichier source du
+ mpm et recompiler le serveur.</p>
+ </note>
+</usage>
+<seealso><a href="../stopping.html">Arrêter et redémarrer
+le serveur HTTP Apache</a></seealso>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>StartServers</name>
+<description>Nombre de processus enfants du serveur créés au
+démarrage</description>
+<syntax>StartServers <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpmt_os2</module>
+<module>prefork</module><module>worker</module>
+</modulelist>
+
+<usage>
+ <p>La directive <directive>StartServers</directive> permet de
+ définir le nombre de processus enfants du serveur créés au
+ démarrage. Comme le nombre de processus est contrôlé dynamiquement
+ en fonction de la charge (voir <directive
+ module="mpm_common">MinSpareThreads</directive>, <directive
+ module="mpm_common">MaxSpareThreads</directive>, <directive
+ module="prefork">MinSpareServers</directive>, <directive
+ module="prefork">MaxSpareServers</directive>), il n'est en général
+ pas nécessaire d'ajuster ce paramètre.</p>
+
+ <p>La valeur par défaut diffère d'un MPM à l'autre. Pour
+ <module>worker</module>, la définition par défaut est
+ <code>StartServers 3</code> ; la valeur par défaut est
+ <code>5</code> pour <module>prefork</module> et <code>2</code>
+ pour <module>mpmt_os2</module>.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>StartThreads</name>
+<description>Nombre de threads créés au démarrage</description>
+<syntax>StartThreads <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>mpm_netware</module></modulelist>
+
+<usage>
+ <p>C'est le nombre de threads créés au démarrage du serveur. Comme
+ le nombre de threads est contrôlé dynamiquement
+ en fonction de la charge (voir <directive
+ module="mpm_common">MinSpareThreads</directive>, <directive
+ module="mpm_common">MaxSpareThreads</directive>, <directive
+ module="prefork">MinSpareServers</directive>, <directive
+ module="prefork">MaxSpareServers</directive>), il n'est en général
+ pas nécessaire d'ajuster ce paramètre.</p>
+
+ <p>Pour <module>mpm_netware</module>, la définition par défaut est
+ <code>StartThreads 50</code> et, comme il n'y a qu'un processus, il
+ s'agit du nombre total de threads créés au démarrage pour servir les
+ requêtes.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ThreadLimit</name>
+<description>Le nombre de threads maximum que l'on peut définir par
+processus enfant</description>
+<syntax>ThreadLimit <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_winnt</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>Cette directive permet de définir le nombre maximum que l'on peut
+ affecter à la directive <directive
+ module="mpm_common">ThreadsPerChild</directive> pour la durée de vie
+ du processus Apache httpd. La directive <directive
+ module="mpm_common">ThreadsPerChild</directive> peut être modifiée
+ au cours d'un redémarrage jusqu'à la valeur de la directive <directive
+ module="mpm_common">ThreadLimit</directive>, mais toute tentative
+ de modification de la directive <directive
+ module="mpm_common">ThreadLimit</directive> au cours d'un
+ redémarrage sera ignorée.</p>
+
+ <p>L'utilisation de cette directive doit faire l'objet de
+ précautions particulières. Si <directive>ThreadLimit</directive> est
+ définie à une valeur très supérieure à la directive <directive
+ module="mpm_common">ThreadsPerChild</directive>, de la mémoire
+ partagée supplémentaire sera inutilement allouée. Si les directives
+ <directive>ThreadLimit</directive> et <directive
+ module="mpm_common">ThreadsPerChild</directive> sont définies à des
+ valeurs supérieures à ce que le système peut supporter, ce dernier
+ peut devenir instable, ou Apache httpd peut tout simplement refuser de
+ démarrer. Ne définissez pas cette directive à une valeur supérieure
+ à la valeur maximale que vous pensez affecter à la directive <directive
+ module="mpm_common">ThreadsPerChild</directive> pour le processus
+ Apache httpd en cours d'exécution.</p>
+
+ <p>La valeur par défaut de la directive
+ <directive>ThreadLimit</directive> est <code>1920</code> avec
+ <module>mpm_winnt</module>, et <code>64</code> avec les autres
+ MPMs.</p>
+
+ <note><title>Note</title>
+ <p>Il existe une limite de <code>ThreadLimit 20000</code> (ou
+ <code>ThreadLimit 15000</code> avec <module>mpm_winnt</module>)
+ codée en dur dans le serveur. Ceci est censé éviter les effets
+ désastreux que pourrait provoquer une faute de frappe. Pour
+ dépasser cette limite, vous devez modifier la valeur de
+ MAX_THREAD_LIMIT dans le fichier source du mpm et recompiler le
+ serveur.</p>
+ </note>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ThreadsPerChild</name>
+<description>Nombre de threads créés par chaque processus
+enfant</description>
+<syntax>ThreadsPerChild <var>nombre</var></syntax>
+<default>Voir ci-dessous pour plus de détails</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_winnt</module>
+<module>worker</module></modulelist>
+
+<usage>
+ <p>Cette directive permet de définir le nombre de threads que va
+ créer chaque processus enfant. Un processus enfant crée ces threads
+ au démarrage et n'en crée plus d'autres par la suite. Si l'on
+ utilise un MPM comme <module>mpm_winnt</module> qui ne lance qu'un
+ processus enfant, ce nombre doit être suffisamment grand pour
+ supporter la charge du serveur. Avec un MPM comme
+ <module>worker</module> qui lance plusieurs processus enfants, c'est
+ le nombre <em>total</em> de threads qui doit être suffisamment grand
+ pour supporter la charge du serveur.</p>
+
+ <p>La valeur par défaut de la directive
+ <directive>ThreadsPerChild</directive> est <code>64</code> avec
+ <module>mpm_winnt</module>, et <code>25</code> avec les autres
+ MPMs.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ThreadStackSize</name>
+<description>La taille en octets de la pile qu'utilisent les threads qui
+traitent les connexions clients</description>
+<syntax>ThreadStackSize <var>taille</var></syntax>
+<default>65536 sous NetWare; varie en fonction des autres systèmes
+d'exploitation</default>
+<contextlist><context>server config</context></contextlist>
+<modulelist><module>event</module><module>mpm_netware</module>
+<module>mpmt_os2</module><module>mpm_winnt</module><module>worker</module>
+<module>event</module>
+</modulelist>
+<compatibility>Disponible dans les versions 2.1 et supérieures
+du serveur HTTP Apache</compatibility>
+
+<usage>
+ <p>La directive <directive>ThreadStackSize</directive> permet de
+ définir la taille de la pile (pour les données propres) qu'utilisent
+ les threads qui traitent les connexions clients en faisant appel à
+ des modules. Dans la plupart des cas, la valeur par défaut de la
+ taille de la pile du système d'exploitation convient, mais il existe
+ certaines situations où il peut s'avérer nécessaire de l'ajuster
+ :</p>
+
+ <ul>
+ <li>Sur les plates-formes qui possèdent une valeur par défaut de
+ taille de la pile relativement petite (par exemple HP-UX), Apache
+ httpd peut se crasher si l'on utilise certains modules tiers qui
+ possèdent un quantité de données propres stockées relativement
+ importante. Il se peut que ces mêmes modules fonctionnent
+ correctement sur d'autres plate-formes où la valeur par défaut de
+ la taille de la pile est supérieure. Ce type de crash peut être
+ evité en définissant <directive>ThreadStackSize</directive> à une
+ valeur supérieure à la valeur par défaut du système
+ d'exploitation. Ce type d'ajustement n'est nécessaire que si le
+ fournisseur du module tiers en fait mention, ou si le diagnostic
+ d'un crash d'Apache httpd indique que la taille de la pile était trop
+ petite.</li>
+
+ <li>Sur les plates-formes où la taille par défaut de la pile des
+ threads est sensiblement supérieure à la taille nécessaire pour la
+ configuration du serveur web, il est possible de disposer d'un
+ plus grand nombre de threads par processus enfant si la directive
+ <directive>ThreadStackSize</directive> est définie à une valeur
+ inférieure à la valeur par défaut du système d'exploitation.
+ Cependant, ce
+ type d'ajustement ne doit être effectué que dans un environnement
+ de test permettant de qualifier le serveur web au maximum de ses
+ possibilités, car il peut arriver, dans de rares cas, que des
+ requêtes nécessitent une taille de pile supérieure pour pouvoir
+ être traitées. La taille minimale requise pour la pile dépend
+ fortement des modules utilisés, mais toute modification dans la
+ configuration du serveur web peut invalider la définition courante
+ de la directive <directive>ThreadStackSize</directive>.</li>
+
+ <li>Sous Linux, cette directive ne peut être utilisée que pour
+ augmenter la valeur par defaut de la taille de la pile, car
+ l'appel système sous-jacent utilise cette valeur comme taille de pile
+ <em>minimale</em>. C'est la limite logicielle (souvent élevée)
+ pour <code>ulimit -s</code> (8Mo si aucune limite) qui est
+ utilisée comme taille de pile par défaut.</li>
+ </ul>
+
+ <note>Il est recommandé de ne pas réduire
+ <directive>ThreadStackSize</directive>, à moins qu'un grand nombre
+ de threads par processus enfant ne soit nécessaire. Sur certaines
+ plates-formes (y compris Linux), une valeur de 128000 est déjà trop
+ basse et provoque des crashes avec certains modules courants.</note>
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>