¿Se necesita reiniciar Apache para que PHP vuelva a leer php.ini?

9

¿PHP lee php.ini en cada solicitud o tengo que reiniciar Apache para que php esté al tanto de los cambios en php.ini?

Petruza
fuente

Respuestas:

11

Deberá reiniciar: los archivos de configuración, incluido php.ini, se leen cuando se inicia el proceso maestro y las páginas web reales son atendidas por procesos apache secundarios clonados (bifurcados) fuera del maestro.

Devin Ceartas
fuente
2
Un reinicio "correcto" debería ser suficiente si desea evitar cualquier riesgo de errores del cliente.
daveadams
@daveadams: genial, ¿qué es un reinicio elegante ? Simplemente lo reinicio con una línea de comando XAMPP, que supongo que mata el proceso y lo vuelve a iniciar. Sin embargo, es solo un servidor de desarrollo local, hijo no se preocupa por los clientes enojados, pero me gustaría saber de todos modos.
Petruza
@Devin: ¿Entonces Apache realmente llama a php una vez y sigue ejecutándose y solo genera hijos para cada solicitud?
Petruza
Para ser precisos, carga los archivos de configuración (como httpd.conf y php.ini) una vez al inicio. Las secuencias de comandos PHP comienzan de nuevo cada vez que se ejecuta una secuencia de comandos PHP: no hay memoria de solicitud cruzada en la ejecución de una secuencia de comandos PHP de la misma manera que existe en algo como mod_perl.
Devin Ceartas
2
@Petruza: agraciado solo significa que no matará ningún proceso que esté en el medio de servir una página a un usuario. Para cosas de desarrollo, su método está bien, pero en general, sea cual sea el script de Apache que esté utilizando para especificar "inicio", "detener" o "reiniciar", puede simplemente decir "elegante" y cada proceso esperará a que se complete el trabajo en curso. antes de morir y reaparecer con la nueva configuración.
daveadams