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