Bloqueo aleatorio de Apache y obtención del error "httpd dead but pid file exists"

Created:

2016-11-16 13:14:41 UTC

Modified:

2017-08-16 17:20:29 UTC

1

Was this article helpful?


Have more questions?

Enviar una solicitud

Bloqueo aleatorio de Apache y obtención del error "httpd dead but pid file exists"

Applicable to:

  • Plesk for Linux

Síntomas

Apache se bloquea de forma aleatoria en el servidor Plesk 11.5.

    # service httpd status
unlimited
httpd dead but pid file exists

Información sobre el sistema instalado:

# rpm -qa | grep httpd
httpd-tools-2.2.15-29.el6_4.cloudlinux.x86_64
httpd-2.2.15-29.el6_4.cloudlinux.x86_64
httpd-devel-2.2.15-29.el6_4.cloudlinux.x86_64

# cat /etc/issue
CloudLinux Server release 6.5 (Pavel Popovich)

/var/log/httpd/error_log contiene mensajes como los siguientes:

*** glibc detected *** /usr/sbin/httpd: double free or corruption (out): 0x00007f4b0fbebe10 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x76166)[0x7f4afecb2166]
/lib64/libc.so.6(+0x78c93)[0x7f4afecb4c93]
/usr/lib64/libapr-1.so.0(apr_pool_destroy+0x1a6)[0x7f4aff424b66]
/usr/sbin/httpd(+0x3f8fe)[0x7f4b007428fe]
/usr/sbin/httpd(+0x3ffeb)[0x7f4b00742feb]
/lib64/libpthread.so.0(+0xf710)[0x7f4aff1fe710]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x2725af)[0x7f4af4d275af]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x26e86e)[0x7f4af4d2386e]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x26e895)[0x7f4af4d23895]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x273d4f)[0x7f4af4d28d4f]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x273dbf)[0x7f4af4d28dbf]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x273e8d)[0x7f4af4d28e8d]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x920ae)[0x7f4af4b470ae]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0xaa833)[0x7f4af4b5f833]
/lib64/libc.so.6(exit+0xe2)[0x7f4afec71e22]
/usr/sbin/httpd(+0x3f911)[0x7f4b00742911]
/usr/sbin/httpd(+0x3fd29)[0x7f4b00742d29]
/usr/sbin/httpd(+0x3ff8a)[0x7f4b00742f8a]
/usr/sbin/httpd(ap_mpm_run+0xc1c)[0x7f4b00743c0c]
/usr/sbin/httpd(main+0xb60)[0x7f4b0071aa70]
/lib64/libc.so.6(__libc_start_main+0xfd)[0x7f4afec5ad1d]
/usr/sbin/httpd(+0x16a09)[0x7f4b00719a09]


*** glibc detected *** /usr/sbin/httpd: free(): invalid pointer: 0x00007f53755caf80 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x76166)[0x7f53640d0166]
/usr/lib64/libapr-1.so.0(apr_pool_destroy+0x1a6)[0x7f5364842b66]
/usr/sbin/httpd(+0x3f8fe)[0x7f5365b608fe]
/usr/sbin/httpd(+0x3ffeb)[0x7f5365b60feb]
/lib64/libpthread.so.0(+0xf710)[0x7f536461c710]
/lib64/libc.so.6(+0x76272)[0x7f53640d0272]
/lib64/libc.so.6(+0x78c28)[0x7f53640d2c28]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x1fb2c4)[0x7f535a12e2c4]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x1fb495)[0x7f535a12e495]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x1fb4c4)[0x7f535a12e4c4]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0xcbf9f)[0x7f5359ffef9f]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x3493bc)[0x7f535a27c3bc]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0x8cdcb)[0x7f5359fbfdcb]
/usr/lib64/httpd/modules/mod_pagespeed.so(+0xa044b)[0x7f5359fd344b]
/lib64/libc.so.6(exit+0xe2)[0x7f536408fe22]
/usr/sbin/httpd(+0x3f911)[0x7f5365b60911]
/usr/sbin/httpd(+0x3fd29)[0x7f5365b60d29]
/usr/sbin/httpd(+0x3ff8a)[0x7f5365b60f8a]
/usr/sbin/httpd(ap_mpm_run+0xc1c)[0x7f5365b61c0c]
/usr/sbin/httpd(main+0xb60)[0x7f5365b38a70]
/lib64/libc.so.6(__libc_start_main+0xfd)[0x7f5364078d1d]
/usr/sbin/httpd(+0x16a09)[0x7f5365b37a09]

Causa

Esto denota que su servidor web no está operativo y que se ha bloqueado. Puede tratarse de una incidencia en el servidor Apache o en alguno de los módulos cargados.

Resolución

Intente actualizar Apache a la versión estable más reciente, de existir.

yum check-update httpd

Intente desactivar algunos de los módulos configurados de forma adicional, como por ejemplo mod_pagespeed.so:

Si el problema persiste, deberá efectuar un volcado de datos del núcleo de Apache (core dump).

Core dump es una operación que guarda el estado actual de un proceso y su memoria en un archivo cuando un daemon (servicio) termina de forma anormal.

Los archivos de este volcado pueden ocupar cientos de megabytes de espacio en disco, por lo que es necesario que compruebe que dispone de suficiente espacio en la unidad. Las instrucciones detalladas a continuación son válidas para sistemas operativos CentOS y RedHat.

  1. Modifique la configuración de Apache:

      File: /etc/httpd/conf/httpd.conf
    CoreDumpDirectory /var/apache-dump
  2. Cree el directorio:

      mkdir /var/apache-dump
    chown apache.apache /var/apache-dump
    chmod 0770 /var/apache-dump
  3. Si el tamaño de los archivos del volcado se ha establecido a '0' , actívelo para el daemon httpd:

    grep DAEMON_COREFILE_LIMIT /etc/sysconfig/httpd
    DAEMON_COREFILE_LIMIT=unlimited
  4. Reinicie el servidor HTTP de Apache:

    service httpd restart
  5. Configuración de prueba:

    kill -11 [PID]
  6. Guía de depuración de Apache http://httpd.apache.org/dev/debugging.html

Si no puede encontrar la causa del problema, solicite ayuda mediante los grupos de debate de Apache .

¿Tiene más preguntas? Enviar una solicitud
Inicie sesión para dejar un comentario.