Hola
He revisando cierto servidor Apache de desarrollo donde apache no respondía ni por el puerto 80 ni por el puerto 443 (timeout siempre), verifiqué que el Apache estaba aparentemente levantado mirando si había un proceso escuchando el 80 y el 443:
[usuarioxxxxxx@desa11 logs]$ sudo netstat -tulpn
tcp 0 0 :::443 :::* LISTEN 1662/httpd
tcp 0 0 :::80 :::* LISTEN 1662/httpd
Como sí que lo había, intenté pararlo/arrancarlo del modo habitual obteniendo un error relativo a que los puertos estaban siendo utilizados:
[usuarioxxxxxx@desa11 logs]$ sudo /etc/init.d/apache stop
[usuarioxxxxxx@desa11 logs]$ sudo /etc/init.d/apache start
Saqué toda la info posible del proceso 1662:
[usuarioxxxxxx@desa11 logs]$ ps -Af | grep 1662
root 1662 1660 0 09:54 ? 00:00:00 /opt/apache/bin/httpd -k start
Y me quedé rallado con '/opt/apache/bin/httpd -k start', de donde salía ese '-k' que nunca había observado.
Maté el proceso
sin mas:
[usuarioxxxxxx@desa11 logs]$ sudo kill 1662
Volví a levantar el apache del modo habitual:
[usuarioxxxxxx@desa11 logs]$ sudo /etc/init.d/apache start
Apache/2.2.23 mod_ssl/2.2.23 (Pass Phrase Dialog)
Some of your private key files are encrypted for security reasons.
In order to read them you have to provide the pass phrases.
Server www.example.com:443 (RSA)
Enter pass phrase:
OK: Pass Phrase Dialog successful.
Tras el rearranque anterior del Apache de ya funcionaba todo sin problemas, pero revisando de nuevo los puertos de nuevo SORPRESA!!!:
[usuarioxxxxxx@desa11 ~]$ sudo netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 :::443 :::* LISTEN 2417/httpd
tcp 0 0 :::80 :::* LISTEN 2417/httpd
[usuarioxxxxxx@desa11 ~]$ ps -Af | grep 2417
root 2417 1 0 10:33 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2419 2417 0 10:33 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2420 2417 0 10:33 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2421 2417 0 10:33 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2422 2417 0 10:33 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2423 2417 0 10:33 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2500 2417 0 10:48 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2501 2417 0 10:48 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2502 2417 0 10:48 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2503 2417 0 10:48 ? 00:00:00 /opt/apache/bin/httpd -k start
apache 2529 2417 0 10:52 ? 00:00:00 /opt/apache/bin/httpd -k start
Resulta
que tenemos 'N threads' de Apache corriendo. Tiene pinta de que el
proceso padre PID=2417 hace un fork de sí mismo por cada peticion recibida, creánmdose un proceso hijo (PIDs=2419...2529). Esto lo he verificado levantando un navegador y atacando uno de los portales del server.
Antes por lo que fuese, el proceso padre (1662) estaba tostado y no se dejaba parar del modo habitual, ahora el proceso padre (2417) lo paro sin problemas con:
sudo /etc/init.d/apache/start
sudo /etc/init.d/apache/stop
Como siempre usamos estos scripts no habíamos visto nunca que Apache se para/arranca/etc (a pelo) con la opción '-k':
/opt/apache/bin/httpd -k start|stop| ...
REFERENCIAS
http://httpd.apache.org/docs/current/programs/httpd.html
No hay comentarios:
Publicar un comentario