]> granicus.if.org Git - apache/blob - docs/manual/stopping.html.es
Remove useless <br \> in highlight blocks.
[apache] / docs / manual / stopping.html.es
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="es" xml:lang="es"><head>
4 <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>Iniciar y Parar el servidor Apache - Servidor HTTP Apache Versión 2.4</title>
11 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <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" />
14 <script src="./style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <p class="menu"><a href="./mod/">Módulos</a> | <a href="./mod/directives.html">Directivas</a> | <a href="http://wiki.apache.org/httpd/FAQ">Preguntas Frecuentes</a> | <a href="./glossary.html">Glosario</a> | <a href="./sitemap.html">Mapa del sitio web</a></p>
20 <p class="apache">Versión 2.4 del Servidor HTTP Apache</p>
21 <img alt="" src="./images/feather.png" /></div>
22 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
23 <div id="path">
24 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Servidor HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentación</a> &gt; <a href="./">Versión 2.4</a></div><div id="page-content"><div id="preamble"><h1>Iniciar y Parar el servidor Apache</h1>
25 <div class="toplang">
26 <p><span>Idiomas disponibles: </span><a href="./de/stopping.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
27 <a href="./en/stopping.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
28 <a href="./es/stopping.html" title="Español">&nbsp;es&nbsp;</a> |
29 <a href="./fr/stopping.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
30 <a href="./ja/stopping.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
31 <a href="./ko/stopping.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
32 <a href="./tr/stopping.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
33 </div>
34 <div class="outofdate">Ésta traducción podría estar
35             obsoleta. Consulte la versión en inglés de la
36             documentación para comprobar si se han producido cambios
37             recientemente.</div>
38
39     <p>Este documento explica como iniciar y parar el servidor Apache
40      en sistemas tipo Unix. Los usuarios de Windows NT, 2000 y XP
41      deben consultar la sección <a href="platform/windows.html#winsvc">Ejecutar Apache como un
42      servicio</a> y los usuario de Windows 9x y ME deben consultar <a href="platform/windows.html#wincons">Ejecutar Apache como una
43      Aplicación de Consola</a> para obtener información
44      sobre como controlar Apache en esas plataformas.</p>
45 </div>
46 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#introduction">Introducción</a></li>
47 <li><img alt="" src="./images/down.gif" /> <a href="#term">Parar Apache</a></li>
48 <li><img alt="" src="./images/down.gif" /> <a href="#graceful">Reinicio Graceful</a></li>
49 <li><img alt="" src="./images/down.gif" /> <a href="#hup">Reiniciar Apache</a></li>
50 <li><img alt="" src="./images/down.gif" /> <a href="#race">Apéndice: señales y race conditions</a></li>
51 </ul><h3>Consulte también</h3><ul class="seealso"><li><a href="programs/httpd.html">httpd</a></li><li><a href="programs/apachectl.html">apachectl</a></li></ul><ul class="seealso"><li><a href="#comments_section">Comentarios</a></li></ul></div>
52 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
53 <div class="section">
54 <h2><a name="introduction" id="introduction">Introducción</a></h2>
55
56     <p>Para parar y reiniciar Apache, hay que enviar la señal
57     apropiada al proceso padre <code>httpd</code> que se esté
58     ejecutando.  Hay dos maneras de enviar estas señales.  En
59     primer lugar, puede usar el comando de Unix <code>kill</code> que
60     envía señales directamente a los procesos. Puede que
61     tenga varios procesos <code>httpd</code> ejecutandose en su
62     sistema, pero las señales deben enviarse solamente al proceso
63     padre, cuyo pid está especificado en la directiva <code class="directive"><a href="./mod/mpm_common.html#pidfile">PidFile</a></code>. Esto quiere decir que no
64     debe necesitar enviar señales a ningún proceso excepto
65     al proceso padre. Hay tres señales que puede enviar al
66     proceso padre: <code><a href="#term">TERM</a></code>, <code><a href="#hup">HUP</a></code>, y <code><a href="#graceful">USR1</a></code>, que van a ser descritas a
67     continuación.</p>
68
69     <p>Para enviar una señal al proceso padre debe escribir un
70     comando como el que se muestra en el ejemplo:</p>
71
72 <div class="example"><p><code>kill -TERM `cat /usr/local/apache2/logs/httpd.pid`</code></p></div>
73
74     <p>La segunda manera de enviar señales a los procesos
75     <code>httpd</code> es usando las opciones de línea de
76     comandos <code>-k</code>: <code>stop</code>, <code>restart</code>,
77     y <code>graceful</code>, como se muestra más abajo.  Estas
78     opciones se le pueden pasar al binario <a href="programs/httpd.html">httpd</a>, pero se recomienda que se
79     pasen al script de control <a href="programs/apachectl.html">apachectl</a>, que a su vez los
80     pasará a <code>httpd</code>.</p>
81
82     <p>Después de haber enviado las señales que desee a
83     <code>httpd</code>, puede ver como progresa el proceso
84     escribiendo:</p>
85
86 <div class="example"><p><code>tail -f /usr/local/apache2/logs/error_log</code></p></div>
87
88     <p>Modifique estos ejemplos para que coincidan con la
89     configuración que tenga especificada en las directivas
90     <code class="directive"><a href="./mod/core.html#serverroot">ServerRoot</a></code> y <code class="directive"><a href="./mod/mpm_common.html#pidfile">PidFile</a></code> en su fichero principal de
91     configuración.</p>
92 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
93 <div class="section">
94 <h2><a name="term" id="term">Parar Apache</a></h2>
95
96 <dl><dt>Señal: TERM</dt>
97 <dd><code>apachectl -k stop</code></dd>
98 </dl>
99
100     <p>Enviar las señales <code>TERM</code> o <code>stop</code>
101     al proceso padre hace que se intenten eliminar todos los procesos
102     hijo inmediatamente. Esto puede tardar algunos minutos. Una vez
103     que hayan terminado todos los procesos hijo, terminará el
104     proceso padre. Cualquier petición en proceso terminará
105     inmediatanmente, y ninguna petición posterior será
106     atendida.</p>
107 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
108 <div class="section">
109 <h2><a name="graceful" id="graceful">Reinicio Graceful</a></h2>
110
111 <dl><dt>Señal: USR1</dt>
112 <dd><code>apachectl -k graceful</code></dd>
113 </dl>
114
115     <p>Las señales <code>USR1</code> o <code>graceful</code>
116     hacen que el proceso padre <em>indique</em> a sus hijos que
117     terminen después de servir la petición que estén
118     atendiendo en ese momento (o de inmediato si no están
119     sirviendo ninguna petición). El proceso padre lee de nuevo
120     sus ficheros de configuración y vuelve a abrir sus ficheros
121     log. Conforme cada hijo va terminando, el proceso padre lo va
122     sustituyendo con un hijo de una nueva <em>generación</em> con
123     la nueva configuración, que empeciezan a servir peticiones
124     inmediatamente.</p>
125
126     <div class="note">En algunas plataformas que no permiten usar
127     <code>USR1</code> para reinicios graceful, puede usarse una
128     señal alternativa (como <code>WINCH</code>). Tambien puede
129     usar <code>apachectl graceful</code> y el script de control
130     enviará la señal adecuada para su plataforma.</div>
131
132     <p>Apache está diseñado para respetar en todo momento la
133     directiva de control de procesos de los MPM, así como para
134     que el número de procesos y hebras disponibles para servir a
135     los clientes se mantenga en los valores adecuados durante el
136     proceso de reinicio.  Aún más, está diseñado
137     para respetar la directiva <code class="directive"><a href="./mod/mpm_common.html#startservers">StartServers</a></code> de la siguiente
138     manera: si después de al menos un segundo el nuevo hijo de la
139     directiva <code class="directive"><a href="./mod/mpm_common.html#startservers">StartServers</a></code>
140     no ha sido creado, entonces crea los suficientes para se atienda
141     el trabajo que queda por hacer. Así, se intenta mantener
142     tanto el número de hijos adecuado para el trabajo que el
143     servidor tenga en ese momento, como respetar la configuración
144     determinada por los parámetros de la directiva
145     <code class="directive">StartServers</code>.</p>
146
147     <p>Los usuarios del módulo <code class="module"><a href="./mod/mod_status.html">mod_status</a></code>
148     notarán que las estadísticas del servidor
149     <strong>no</strong> se ponen a cero cuando se usa la señal
150     <code>USR1</code>. Apache fue escrito tanto para minimizar el
151     tiempo en el que el servidor no puede servir nuevas peticiones
152     (que se pondrán en cola por el sistema operativo, de modo que
153     se no se pierda ningún evento), como para respetar sus
154     parámetros de ajuste. Para hacer esto, tiene que guardar el
155     <em>scoreboard</em> usado para llevar el registro de los procesos
156     hijo a través de las distintas generaciones.</p>
157
158     <p>El mod_status también usa una <code>G</code> para indicar
159     que esos hijos están todavía sirviendo peticiones
160     previas al reinicio graceful.</p>
161
162     <p>Actualmente no existe ninguna manera de que un script con un
163     log de rotación usando <code>USR1</code> sepa con seguridad
164     que todos los hijos que se registraron en el log con anterioridad
165     al reinicio han terminado. Se aconseja que se use un retardo
166     adecuado después de enviar la señal <code>USR1</code>
167     antes de hacer nada con el log antiguo. Por ejemplo, si la mayor
168     parte las visitas que recibe de usuarios que tienen conexiones de
169     baja velocidad tardan menos de 10 minutos en completarse, entoces
170     espere 15 minutos antes de hacer nada con el log antiguo.</p>
171
172     <div class="note">Si su fichero de configuración tiene errores cuando
173     haga el reinicio, entonces el proceso padre no se reinciciará
174     y terminará con un error. En caso de un reinicio graceful,
175     también dejará a los procesos hijo ejecutandose mientras
176     existan.  (Estos son los hijos de los que se está saliendo de
177     forma graceful y que están sirviendo sus últimas
178     peticiones.) Esto provocará problemas si intenta reiniciar el
179     servidor -- no será posible conectarse a la lista de puertos
180     de escucha. Antes de reiniciar, puede comprobar que la sintaxis de
181     sus ficheros de configuracion es correcta con la opción de
182     línea de comandos <code>-t</code> (consulte <a href="programs/httpd.html">httpd</a>). No obstante, esto no
183     garantiza que el servidor se reinicie correctamente. Para
184     comprobar que no hay errores en los ficheros de
185     configuración, puede intentar iniciar <code>httpd</code> con
186     un usuario diferente a root. Si no hay errores, intentará
187     abrir sus sockets y logs y fallará porque el usuario no es
188     root (o porque el <code>httpd</code> que se está ejecutando
189     en ese momento ya está conectado a esos puertos). Si falla
190     por cualquier otra razón, entonces casi seguro que hay
191     algún error en alguno de los ficheros de configuración y
192     debe corregir ese o esos errores antes de hacer un reinicio
193     graceful.</div>
194 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
195 <div class="section">
196 <h2><a name="hup" id="hup">Reiniciar Apache</a></h2>
197
198 <dl><dt>Señal: HUP</dt>
199 <dd><code>apachectl -k restart</code></dd>
200 </dl>
201
202     <p>El envío de las señales <code>HUP</code> o
203     <code>restart</code> al proceso padre hace que los procesos hijo
204     terminen como si le enviá ramos la señal
205     <code>TERM</code>, para eliminar el proceso padre. La diferencia
206     está en que estas señales vuelven a leer los archivos de
207     configuración y vuelven a abrir los ficheros log. Se genera
208     un nuevo conjunto de hijos y se continúa sirviendo
209     peticiones.</p>
210
211     <p>Los usuarios del módulo <code class="module"><a href="./mod/mod_status.html">mod_status</a></code>
212     notarán que las estadísticas del servidor se ponen a
213     cero cuando se envía la señal <code>HUP</code>.</p>
214
215 <div class="note">Si su fichero de configuración contiene errores, cuando
216 intente reiniciar, el proceso padre del servidor no se
217 reiniciará, sino que terminará con un error. Consulte
218 más arriba cómo puede solucionar este problema.</div>
219 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
220 <div class="section">
221 <h2><a name="race" id="race">Apéndice: señales y race conditions</a></h2>
222
223     <p>Con anterioridad a la versión de Apache 1.2b9 había
224     varias <em>race conditions</em> implicadas en las señales
225     para parar y reiniciar procesos (una descripción sencilla de
226     una race condition es: un problema relacionado con el momento en
227     que suceden las cosas, como si algo sucediera en momento en que no
228     debe, y entonces el resultado esperado no se corresponde con el
229     obtenido). Para aquellas arquitecturas que tienen el conjunto de
230     características "adecuadas", se han eliminado tantas race
231     conditions como ha sido posible. Pero hay que tener en cuenta que
232     todavía existen race conditions en algunas arquitecturas.</p>
233
234     <p>En las arquitecturas que usan un <code class="directive"><a href="./mod/mpm_common.html#scoreboardfile">ScoreBoardFile</a></code> en disco, existe la
235     posibilidad de que se corrompan los scoreboards. Esto puede hacer
236     que se produzca el error "bind: Address already in use"
237     (después de usar<code>HUP</code>) o el error "long lost child
238     came home!"  (después de usar <code>USR1</code>). En el
239     primer caso se trata de un error irrecuperable, mientras que en el
240     segundo, solo ocurre que el servidor pierde un slot del
241     scoreboard. Por lo tanto, sería aconsejable usar reinicios
242     graceful, y solo hacer reinicios normales de forma
243     ocasional. Estos problemas son bastante complicados de solucionar,
244     pero afortunadamente casi ninguna arquitectura necesita un fichero
245     scoreboard. Consulte la documentación de la directiva
246     <code class="directive"><a href="./mod/mpm_common.html#scoreboardfile">ScoreBoardFile</a></code> para ver
247     las arquitecturas que la usan.</p>
248
249     <p>Todas las arquitecturas tienen una pequeña race condition
250     en cada proceso hijo implicada en la segunda y subsiguientes
251     peticiones en una conexión HTTP persistente
252     (KeepAlive). Puede ser que el servidor termine después de
253     leer la línea de petición pero antes de leer cualquiera
254     de las cebeceras de petición. Hay una solución que fue
255     descubierta demasiado tarde para la incluirla en versión
256     1.2. En teoria esto no debe suponer ningún problema porque el
257     cliente KeepAlive ha de esperar que estas cosas pasen debido a los
258     retardos de red y a los timeouts que a veces dan los
259     servidores. En la practica, parece que no afecta a nada más
260     -- en una sesión de pruebas, un servidor se reinició
261     veinte veces por segundo y los clientes pudieron navegar sin
262     problemas por el sitio web sin encontrar problemas ni para
263     descargar una sola imagen ni encontrar un solo enlace roto. </p>
264 </div></div>
265 <div class="bottomlang">
266 <p><span>Idiomas disponibles: </span><a href="./de/stopping.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
267 <a href="./en/stopping.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
268 <a href="./es/stopping.html" title="Español">&nbsp;es&nbsp;</a> |
269 <a href="./fr/stopping.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
270 <a href="./ja/stopping.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
271 <a href="./ko/stopping.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
272 <a href="./tr/stopping.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
273 </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">Comentarios</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;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>
274 <script type="text/javascript"><!--//--><![CDATA[//><!--
275 var comments_shortname = 'httpd';
276 var comments_identifier = 'http://httpd.apache.org/docs/2.4/stopping.html';
277 (function(w, d) {
278     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
279         d.write('<div id="comments_thread"><\/div>');
280         var s = d.createElement('script');
281         s.type = 'text/javascript';
282         s.async = true;
283         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
284         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
285     }
286     else { 
287         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
288     }
289 })(window, document);
290 //--><!]]></script></div><div id="footer">
291 <p class="apache">Copyright 2016 The Apache Software Foundation.<br />Licencia bajo los términos de la <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
292 <p class="menu"><a href="./mod/">Módulos</a> | <a href="./mod/directives.html">Directivas</a> | <a href="http://wiki.apache.org/httpd/FAQ">Preguntas Frecuentes</a> | <a href="./glossary.html">Glosario</a> | <a href="./sitemap.html">Mapa del sitio web</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
293 if (typeof(prettyPrint) !== 'undefined') {
294     prettyPrint();
295 }
296 //--><!]]></script>
297 </body></html>