1<?xml version="1.0" encoding="ISO-8859-1"?> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 3<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!-- 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 5 This file is generated from xml source: DO NOT EDIT 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 7 --> 8<title>Arr�t et red�marrage - Serveur Apache HTTP</title> 9<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> 10<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> 11<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" /> 12<script src="/style/scripts/prettify.js" type="text/javascript"> 13</script> 14 15<link href="/images/favicon.ico" rel="shortcut icon" /></head> 16<body id="manual-page"><div id="page-header"> 17<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> 18<p class="apache">Serveur Apache HTTP Version 2.2</p> 19<img alt="" src="/images/feather.gif" /></div> 20<div class="up"><a href="./"><img title="<-" alt="<-" src="/images/left.gif" /></a></div> 21<div id="path"> 22<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.2</a></div><div id="page-content"><div id="preamble"><h1>Arr�t et red�marrage</h1> 23<div class="toplang"> 24<p><span>Langues Disponibles: </span><a href="/de/stopping.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> | 25<a href="/en/stopping.html" hreflang="en" rel="alternate" title="English"> en </a> | 26<a href="/es/stopping.html" hreflang="es" rel="alternate" title="Espa�ol"> es </a> | 27<a href="/fr/stopping.html" title="Fran�ais"> fr </a> | 28<a href="/ja/stopping.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 29<a href="/ko/stopping.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 30<a href="/tr/stopping.html" hreflang="tr" rel="alternate" title="T�rk�e"> tr </a></p> 31</div> 32 33 <p>Ce document couvre l'arr�t et le red�marrage d'Apache sur 34 les syst�mes Unix et similaires. Les utilisateurs de Windows NT, 2000 35 and XP doivent consulter 36 <a href="platform/windows.html#winsvc">Ex�cuter Apache en tant que 37 service</a> et les utilisateurs de Windows 9x et ME doivent consulter 38 <a href="platform/windows.html#wincons">Ex�cuter Apache comme une 39 application de type console</a> pour plus d'informations sur le contr�le 40 d'Apache � partir de ces plateformes.</p> 41</div> 42<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#introduction">Introduction</a></li> 43<li><img alt="" src="/images/down.gif" /> <a href="#term">Arr�ter imm�diatement</a></li> 44<li><img alt="" src="/images/down.gif" /> <a href="#graceful">Red�marrage en douceur</a></li> 45<li><img alt="" src="/images/down.gif" /> <a href="#hup">Red�marrer imm�diatement</a></li> 46<li><img alt="" src="/images/down.gif" /> <a href="#gracefulstop">Arr�t en douceur</a></li> 47</ul><h3>Voir aussi</h3><ul class="seealso"><li><code class="program"><a href="/programs/httpd.html">httpd</a></code></li><li><code class="program"><a href="/programs/apachectl.html">apachectl</a></code></li><li><a href="invoking.html">D�marrage</a></li></ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div> 48<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 49<div class="section"> 50<h2><a name="introduction" id="introduction">Introduction</a></h2> 51 52 <p>Afin d'arr�ter ou red�marrer Apache, vous devez envoyer un signal aux 53 processus <code class="program"><a href="/programs/httpd.html">httpd</a></code> en cours d'ex�cution. Les signaux 54 peuvent �tre envoy�s de deux mani�res. Tout d'abord, vous pouvez 55 utiliser la commande unix <code>kill</code> 56 pour envoyer directement des signaux aux processus. Vous pouvez remarquer 57 que plusieurs processus <code class="program"><a href="/programs/httpd.html">httpd</a></code> s'ex�cutent sur votre 58 syst�me, mais il vous suffit d'envoyer les signaux au processus parent, 59 dont le PID est enregistr� dans le fichier pr�cis� par la directive 60 <code class="directive"><a href="/mod/mpm_common.html#pidfile">PidFile</a></code>. C'est � dire que vous 61 n'aurez jamais besoin d'envoyer des signaux � aucun de ces processus, 62 sauf au processus parent. Trois types de signaux peuvent �tre envoy�s 63 au processus parent : 64 <code><a href="#term">TERM</a></code>, 65 <code><a href="#graceful">USR1</a></code>, 66 <code><a href="#hup">HUP</a></code>, et 67 <code><a href="#gracefulstop">WINCH</a></code>, qui 68 sera d�crit plus loin.</p> 69 70 <p>Pour envoyer un signal au processus parent, vous devez entrer une commande 71 du style :</p> 72 73<div class="example"><p><code>kill -TERM `cat /usr/local/apache2/logs/httpd.pid`</code></p></div> 74 75 <p>La seconde m�thode permettant d'envoyer des signaux aux processus 76 <code class="program"><a href="/programs/httpd.html">httpd</a></code> 77 consiste � utiliser les options de ligne de commande <code>-k</code> : 78 <code>stop</code>, 79 <code>restart</code>, <code>graceful</code> et <code>graceful-stop</code>, 80 comme d�crit ci-dessous. Ce sont des arguments du binaire 81 <code class="program"><a href="/programs/httpd.html">httpd</a></code>, mais il est recommand� de les utiliser 82 avec le script de contr�le <code class="program"><a href="/programs/apachectl.html">apachectl</a></code>, qui se 83 chargera de les passer � <code class="program"><a href="/programs/httpd.html">httpd</a></code>.</p> 84 85 <p>Apr�s avoir envoy� un signal � <code class="program"><a href="/programs/httpd.html">httpd</a></code>, vous pouvez 86 suivre le cours de son action en entrant :</p> 87 88<div class="example"><p><code>tail -f /usr/local/apache2/logs/error_log</code></p></div> 89 90 <p>Adaptez ces exemples en fonction de la d�finition de vos directives 91 <code class="directive"><a href="/mod/core.html#serverroot">ServerRoot</a></code> et 92 <code class="directive"><a href="/mod/mpm_common.html#pidfile">PidFile</a></code>.</p> 93</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 94<div class="section"> 95<h2><a name="term" id="term">Arr�ter imm�diatement</a></h2> 96 97<dl><dt>Signal: TERM</dt> 98<dd><code>apachectl -k stop</code></dd> 99</dl> 100 101 <p>L'envoi du signal <code>TERM</code> ou <code>stop</code> au 102 processus parent induit chez celui-ci une tentative imm�diate 103 de tuer tous ses processus enfants. Cela peut durer plusieurs secondes. 104 Apr�s cela, le processus parent lui-m�me se termine. Toutes les requ�tes 105 en cours sont termin�es, et plus aucune autre n'est trait�e.</p> 106</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 107<div class="section"> 108<h2><a name="graceful" id="graceful">Red�marrage en douceur</a></h2> 109 110<dl><dt>Signal: USR1</dt> 111<dd><code>apachectl -k graceful</code></dd> 112</dl> 113 114 <p>L'envoi du signal <code>USR1</code> ou <code>graceful</code> au 115 processus parent lui fait envoyer aux processus enfants 116 <em>l'ordre</em> de se terminer une fois leur requ�te courante 117 trait�e (ou de se terminer imm�diatement s'ils n'ont plus rien � traiter). 118 Le processus parent relit ses fichiers de configuration et 119 r�ouvre ses fichiers de log. Chaque fois qu'un enfant s'�teint, le 120 processus parent le remplace par un processus 121 enfant de la nouvelle <em>g�n�ration</em> de la 122 configuration, et celui-ci commence imm�diatement � traiter les 123 nouvelles requ�tes.</p> 124 125 <p>Ce code est con�u pour toujours respecter la directive de contr�le 126 de processus des modules MPMs, afin que les nombres de processus et de 127 threads 128 disponibles pour traiter les demandes des clients soient maintenus � 129 des valeurs appropri�es tout au long du processus de d�marrage. 130 En outre, il respecte la directive 131 <code class="directive"><a href="/mod/mpm_common.html#startservers">StartServers</a></code> de la mani�re 132 suivante : si apr�s une seconde au moins <code class="directive"><a href="/mod/mpm_common.html#startservers">StartServers</a></code> nouveaux processus 133 enfants n'ont pas �t� cr��s, un nombre suffisant de processus 134 suppl�mentaires est cr�� pour combler le manque. Ainsi le code 135 tente de maintenir � la fois le nombre appropri� de processus enfants 136 en fonction de la charge du serveur, et vos souhaits d�finis par la 137 directive <code class="directive"><a href="/mod/mpm_common.html#startservers">StartServers</a></code>.</p> 138 139 <p>Les utilisateurs du module <code class="module"><a href="/mod/mod_status.html">mod_status</a></code> 140 noteront que les statistiques du serveur ne sont <strong>pas</strong> 141 remises � z�ro quand un signal <code>USR1</code> est envoy�. Le code 142 a �t� con�u � la fois pour minimiser la dur�e durant laquelle le 143 serveur ne peut pas traiter de nouvelles requ�tes (elle sont mises en 144 file d'attente par le syst�me d'exploitation, et ne sont ainsi jamais 145 perdues) et pour respecter vos param�tres de personnalisation. 146 Afin d'accomplir ceci, il doit conserver le 147 <em>tableau</em> utilis� pour garder la trace de tous les processus 148 enfants au cours des diff�rentes g�n�rations.</p> 149 150 <p>Dans son �tat des processus, 151 le module status utilise aussi un <code>G</code> afin d'indiquer 152 quels processus enfants ont encore des traitements de requ�tes en cours 153 d�but�s avant que l'ordre graceful restart ne soit donn�.</p> 154 155 <p>Pour l'instant, il est impossible pour un script de rotation 156 des logs utilisant 157 <code>USR1</code> de savoir de mani�re certaine si tous les processus 158 enfants inscrivant des traces de pr�-red�marrage sont termin�s. 159 Nous vous sugg�rons d'attendre un d�lai suffisant apr�s l'envoi du 160 signal <code>USR1</code> 161 avant de faire quoi que ce soit avec les anciens logs. Par exemple, 162 si la plupart de vos traitements durent moins de 10 minutes pour des 163 utilisateurs empruntant des liaisons � faible bande passante, alors vous 164 devriez attendre 15 minutes avant de faire quoi que ce soit 165 avec les anciens logs.</p> 166 167 <div class="note"> 168 Si votre fichier de configuration comporte des erreurs lorsque vous 169 effectuez un red�marrage, votre processus parent ne red�marrera pas 170 et se terminera avec une erreur. Dans le cas d'un red�marrage en douceur 171 (graceful restart), il laissera les processus enfants 172 s'ex�cuter quand il s'arr�tera. (Ce sont les processus enfants qui 173 "s'arr�tent en douceur" en terminant de traiter leur derni�re requ�te.) 174 Ceci provoquera des probl�mes si vous tentez de red�marrer le serveur 175 -- il ne pourra pas s'associer � ses ports d'�coute. Avant d'effectuer un 176 red�marrage, vous pouvez v�rifier la syntaxe des fichiers de 177 configuration � l'aide de l'argument de ligne de commande <code>-t</code> 178 (voir <code class="program"><a href="/programs/httpd.html">httpd</a></code>). 179 180 Ceci ne garantit pas encore que le serveur va red�marrer 181 correctement. Pour v�rifier la s�mantique des fichiers de configuration 182 en plus de leur syntaxe, vous pouvez essayer de d�marrer 183 <code class="program"><a href="/programs/httpd.html">httpd</a></code> sous un utilisateur non root. 184 S'il n'y a pas d'erreurs, il tentera d'ouvrir ses sockets et ses fichiers 185 de log et �chouera car il n'a pas les privil�ges root (ou parce que 186 l'instance actuelle de 187 <code class="program"><a href="/programs/httpd.html">httpd</a></code> est d�j� associ�e � ces ports). S'il �choue 188 pour toute autre raison, il y a probablement une erreur dans le 189 fichier de configuration et celle-ci doit �tre corrig�e avant de lancer 190 le red�marrage en douceur.</div> 191</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 192<div class="section"> 193<h2><a name="hup" id="hup">Red�marrer imm�diatement</a></h2> 194 195<dl><dt>Signal: HUP</dt> 196<dd><code>apachectl -k restart</code></dd> 197</dl> 198 199 <p>L'envoi du signal <code>HUP</code> ou <code>restart</code> au 200 processus parent lui fait tuer ses processus enfants comme pour le signal 201 <code>TERM</code>, mais le processus parent ne se termine pas. 202 Il relit ses fichiers de configuration, et r�ouvre ses fichiers de log. 203 Puis il donne naissance � un nouveau jeu de processus enfants 204 et continue de traiter les requ�tes.</p> 205 206 <p>Les utilisateurs du module <code class="module"><a href="/mod/mod_status.html">mod_status</a></code> 207 noteront que les statistiques du serveur sont remises � z�ro quand un 208 signal <code>HUP</code> est envoy�.</p> 209 210<div class="note">Si votre fichier de configuration comporte des erreurs quand vous 211effectuez un red�marrage, votre processus parent ne red�marrera pas, 212il se terminera avec une erreur. Voir plus haut la m�thode � employer 213pour �viter ce probl�me.</div> 214</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 215<div class="section"> 216<h2><a name="gracefulstop" id="gracefulstop">Arr�t en douceur</a></h2> 217 218<dl><dt>Signal : WINCH</dt> 219<dd><code>apachectl -k graceful-stop</code></dd> 220</dl> 221 222 <p>L'envoi du signal <code>WINCH</code> ou <code>graceful-stop</code> 223 au processus parent lui fait <em>aviser</em> les processus enfants 224 de s'arr�ter apr�s le traitement de leur requ�te en cours 225 (ou de s'arr�ter imm�diatement s'ils n'ont plus de requ�te � traiter). 226 Le processus parent va alors supprimer son fichier 227 <code class="directive"><a href="/mod/mpm_common.html#pidfile">PidFile</a></code> et cesser l'�coute 228 de tous ses ports. Le processus parent va continuer � s'ex�cuter, 229 et va surveiller les processus enfants 230 qui ont encore des requ�tes � traiter. Lorsque tous les processus enfants 231 ont termin� leurs traitements et se sont arr�t�s ou lorsque le d�lai 232 sp�cifi� par la directive <code class="directive"><a href="/mod/mpm_common.html#gracefulshutdowntimeout">GracefulShutdownTimeout</a></code> a �t� atteint, 233 le processus parent s'arr�tera � son tour. Si ce d�lai est atteint, 234 tout processus enfant encore en cours d'ex�cution se verra envoyer 235 le signal <code>TERM</code> 236 afin de le forcer � s'arr�ter.</p> 237 238 <p>L'envoi du signal <code>TERM</code> va arr�ter imm�diatement 239 les processus parent et enfants en �tat "graceful". Cependant, 240 comme le fichier <code class="directive"><a href="/mod/mpm_common.html#pidfile">PidFile</a></code> 241 aura �t� supprim�, vous ne pourrez pas utiliser 242 <code>apachectl</code> ou <code>httpd</code> pour envoyer ce signal.</p> 243 244 <div class="note"><p>Le signal <code>graceful-stop</code> vous permet d'ex�cuter 245 simultan�ment plusieurs instances de <code class="program"><a href="/programs/httpd.html">httpd</a></code> 246 avec des configurations identiques. Ceci s'av�re une fonctionnalit� 247 puissante quand vous effectuez des mises � jour "en douceur" d'Apache; 248 cependant, cela peut aussi causer des blocages fatals et des 249 situations de comp�tition (race conditions) 250 avec certaines configurations.</p> 251 252 <p>On a pris soin de s'assurer que les fichiers sur disque 253 comme ceux d�finis par les directives 254 <code class="directive"><a href="/mod/mpm_common.html#lockfile">Lockfile</a></code> et 255 <code class="directive"><a href="/mod/mod_cgid.html#scriptsock">ScriptSock</a></code> contiennent le PID 256 du serveur,et coexistent sans probl�me. Cependant, si une directive de 257 configuration , un module tiers ou une CGI r�sidente utilise un autre 258 verrou ou fichier d'�tat sur disque, il faut prendre soin de s'assurer 259 que chaque instance de <code class="program"><a href="/programs/httpd.html">httpd</a></code> qui s'ex�cute 260 n'�crase pas les fichiers des autres instances.</p> 261 262 <p>Vous devez aussi prendre garde aux autres situations de comp�tition, 263 comme l'utilisation de l'enregistrement des logs avec un transfert de ceux-ci 264 dans le style <code class="program"><a href="/programs/rotation des logs.html">rotation des logs</a></code>. Plusieurs instances 265 du programme de <code class="program"><a href="/programs/rotation des logs.html">rotation des logs</a></code> qui tentent d'effectuer 266 une rotation des m�mes fichiers de log en m�me temps peuvent d�truire 267 mutuellement leurs propres fichiers de log.</p></div> 268</div></div> 269<div class="bottomlang"> 270<p><span>Langues Disponibles: </span><a href="/de/stopping.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> | 271<a href="/en/stopping.html" hreflang="en" rel="alternate" title="English"> en </a> | 272<a href="/es/stopping.html" hreflang="es" rel="alternate" title="Espa�ol"> es </a> | 273<a href="/fr/stopping.html" title="Fran�ais"> fr </a> | 274<a href="/ja/stopping.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 275<a href="/ko/stopping.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 276<a href="/tr/stopping.html" hreflang="tr" rel="alternate" title="T�rk�e"> tr </a></p> 277</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> 278<script type="text/javascript"><!--//--><![CDATA[//><!-- 279var comments_shortname = 'httpd'; 280var comments_identifier = 'http://httpd.apache.org/docs/2.2/stopping.html'; 281(function(w, d) { 282 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 283 d.write('<div id="comments_thread"><\/div>'); 284 var s = d.createElement('script'); 285 s.type = 'text/javascript'; 286 s.async = true; 287 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 288 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 289 } 290 else { 291 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 292 } 293})(window, document); 294//--><!]]></script></div><div id="footer"> 295<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autoris� sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> 296<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[//><!-- 297if (typeof(prettyPrint) !== 'undefined') { 298 prettyPrint(); 299} 300//--><!]]></script> 301</body></html>