El servicio APACHE de Windows + a menudo resuelve el problema

  

El host que coincide con el botín redondo es Windows 2003 Server + Apache + PHP + Mysql. Cuando el sitio web está inicialmente en línea, he encontrado muchos problemas en la operación y el mantenimiento del host. Decir que un problema raro, pero que también me causó un dolor de cabeza durante varios días, es que APACHE se detiene automáticamente después de ejecutar un tiempo inoportuno, el registro del sistema de Windows muestra: El servicio Apache2 se detuvo debido a un error de servicio 1 (0x1) . el registro de errores de Apache final se lee de la siguiente manera:

[Jue Mar 21 de 01: 08: 09,187500 2013] [mpm_winnt: aviso] [pid 2988: tid 1696] AH00358: Niño: Proceso de salir porque alcanzó MaxConnectionsPerChild .. señalización los padres para reiniciar un nuevo proceso hijo

[Jue Mar 21 de 01: 08: 09,203125 2013] [mpm_winnt: aviso] [pid 2992: tid 436] AH00424: matriz: Recibido señal de reinicio - reinicio .
el servidor

[Jue Mar 21 de 01: 08: 11.000000 2013] [SSL: advertirle] [pid 2992: tid 436] AH01873: Init: caché de sesión no está configurado [pista: SSLSessionCache]

[Jue Mar 21 de 01: 08: 11.187500 2013] [mpm_winnt: aviso] [pid 2988: tid 1696] AH00364: niño :. todos los subprocesos de trabajo han salido

algo más parecía normal, excepto por SSL Además, la advertencia no estaba clara al principio. Pensé que había un problema con la configuración de SSL. Configuré el SSL, pero después de la configuración, no pregunté "El caché de sesión no está configurado", pero el error aún persiste. Continuar buscando pistas del registro de errores de APACHE, esta vez usé Las palabras clave son y " MaxConnectionsPerChild y ", esta configuración puede ser un montón de gente no sabe lo que es, es sólo APACHE2.4 en el caso, originalmente llamado MaxRequestsPerChild, significa que el número máximo de procesos hijo con conexiones, cuando después de alcanzar el valor establecido, APACHE finalizará el proceso secundario actual, liberará la memoria y luego abrirá un nuevo proceso secundario, esta configuración se encuentra en httpd-mpm.conf, porque se ejecuta en el entorno de Windows, por lo que la derecha es WinNT MPM, la configuración original ellos son:

ThreadsPerChild 250

MaxConnectionsPerChild 10000

dijo que con el fin de evitar desbordamiento de la memoria, no MaxConnectionsPerChild establece en 0, pero se puede configurar para tener en cuenta un número pequeño, por lo que establece en 500, continúe probando, pero no importa cuánto haya cambiado, APACHE aún se cuelga de vez en cuando, de acuerdo con el método en línea que probé una vez más, después de todo, no resolví este problema, he cambiado la idea de reiniciar el sistema nuevamente. ...

En el proceso de resolver este problema, encontré que el sistema se está ejecutando muy lentamente. Cuando abro el administrador de tareas, la memoria en realidad representa 3. G, encontré que APACHE en realidad no finalizó el proceso hijo, la memoria ha sido ocupada y no ha sido traducida, parece que me inspiro, parece que esta configuración de raíz y MaxConnectionsPerChild no es mucho contacto, pero en el proceso hijo Después de que el número de subprocesos es limitado, ¿qué sucede cuando APACHE intenta cerrar el proceso secundario actual y luego reiniciar el nuevo proceso secundario para que falle? Abrí el visor de registro de Windows nuevamente y finalmente encontré un registro en el registro de la aplicación que se generó junto con el error APACHE. El contenido es "No se pudo encontrar la descripción del evento ID (487) (en el recurso (Zend Optimizer +)). ", De acuerdo con esto, continúo buscando en Internet el contenido relevante de este registro de errores, pero es una pena que haya intentado todas las soluciones, aún no he obtenido resultados y, por último, desactivaré Zend, el método específico es abrir el php.ini, comente las dos líneas siguientes, se solucionó el problema .....

[Zend]

zend_extension = " D: \\ php \\ ext \\ " ZendOptimizer.dll;

De esta manera APACHE finalmente puede funcionar normalmente.

La coincidencia del host del toot redondo es Windows 2003 Server + Apache + PHP + Mysql. Cuando el sitio web se probó por primera vez, encontré muchos problemas en la operación y el mantenimiento del host. Este es un caso raro. El problema que también me causó dolores de cabeza durante algunos días es que APACHE se detiene automáticamente después de ejecutar un tiempo inoportuno. El registro del sistema de Windows muestra que el servicio Apache2 se detuvo debido a un error de servicio 1 (0x1). el registro de errores de Apache final se lee de la siguiente manera:

[Jue Mar 21 de 01: 08: 09,187500 2013] [mpm_winnt: aviso] [pid 2988: tid 1696] AH00358: Niño: Proceso de salir porque alcanzó MaxConnectionsPerChild . la señalización de los padres para reiniciar un nuevo proceso hijo [Jue Mar 21 de 01: 08: 09,203125 2013] [mpm_winnt: aviso] [pid 2992: tid 436] AH00424: matriz: .. señal de reinicio Recibido - reinicio del servidor [Jue Mar 21 01: 08: 11.000000 2013] [SSL: advertirle] [pid 2992: tid 436] AH01873: Init: caché de sesión no está configurado [pista: SSLSessionCache] [Jue Mar 21 01: 08: 11.187500 2013] [mpm_winnt: aviso] [pid 2988: tid 1696] AH00364: Niño: Todos los subprocesos de trabajo han salido.

Otro contenido parece ser normal, excepto por la advertencia de SSL, no está claro al principio, pensando que hay un problema con la configuración de SSL. SSL está configurado, pero después de la configuración, no aparece "Caché de sesión no está configurado", pero el error persiste, continúo buscando pistas del registro de errores de APACHE, esta vez usé la palabra clave Sí y " MaxCo nnectionsPerChild y ", esta configuración puede ser un montón de gente no sabe lo que es, es sólo APACHE2.4 en el caso, originalmente llamado MaxRequestsPerChild, significa que el número máximo de procesos hijo con conexiones, cuando después de alcanzar el valor establecido, APACHE pondrá fin a la actual El proceso secundario, libera la memoria y luego abre el nuevo proceso secundario, esta configuración se encuentra en httpd-mpm.conf, porque se ejecuta en el entorno de Windows, por lo que es WinNT MPM, la configuración original es:

ThreadsPerChild 250

MaxConnectionsPerChild 10000

Para evitar el desbordamiento de memoria, MaxConnectionsPerChild no debe configurarse a 0, pero puede considerar establecerlo en un valor pequeño, así que lo puse a 500 y continúo probando. Pero no importa cuánto haya cambiado, APACHE aún se cuelga de vez en cuando. Lo intenté todo de acuerdo con el método en línea. Después de todo, no resolví este problema. Moví la idea de reiniciar el sistema de nuevo ...

En el proceso de resolver este problema, encontré que el sistema se está ejecutando muy lentamente. Cuando abro el administrador de tareas, la memoria en realidad cuenta con más de 3G, solo para encontrar el AP. ACHE no finaliza realmente el proceso secundario. La memoria ha sido ocupada y no ha sido traducida. Parece que me inspiro. Parece que esto no está muy relacionado con la configuración de MaxConnectionsPerChild, pero después de alcanzar el número de subprocesos definidos por el proceso secundario. ¿Qué sucedió cuando APACHE intentó cerrar el proceso hijo actual y volver a abrir el nuevo proceso hijo para que falle? Abrí el visor de registro de Windows nuevamente y finalmente encontré un registro en el registro de la aplicación que se generó junto con el error APACHE. El contenido es "No se pudo encontrar la descripción del evento ID (487) (en el recurso (Zend Optimizer +)). ", De acuerdo con esto, continúo buscando en Internet el contenido relevante de este registro de errores, pero es una pena que haya intentado todas las soluciones, aún no he obtenido resultados y, por último, desactivaré Zend, el método específico es Abra php.ini, comente las siguientes dos líneas, el problema finalmente se solucionó .....

[zend] zend_extension = " D: \\ php \\ ext \\ ZendOptimizer.dll "

De esta manera APACHE finalmente puede funcionar normalmente.

Copyright © Conocimiento de Windows All Rights Reserved