Redémarrage d'Apache nécessaire pour que PHP relise php.ini?

9

PHP lit-il php.ini à chaque demande ou dois-je redémarrer Apache pour que php soit au courant des changements sur php.ini?

Petruza
la source

Réponses:

11

Vous devrez redémarrer - les fichiers de configuration, y compris php.ini, sont lus lorsque le processus maître démarre et les pages Web réelles sont servies par des processus apache enfants clonés (bifurqués) hors du maître.

Devin Ceartas
la source
2
Un redémarrage "gracieux" devrait être suffisant si vous voulez éviter tout risque d'erreur client.
daveadams
@daveadams: super, qu'est-ce qu'un redémarrage gracieux ? Je viens de le redémarrer avec une ligne de commande XAMPP, ce qui, je suppose, tue le processus et le relance. C'est juste un serveur de développement local, fils, pas de soucis pour les clients en colère, mais j'aimerais savoir quand même.
Petruza
@Devin: Donc, apache appelle en fait php une fois et il continue de fonctionner et ne génère des enfants que pour chaque demande?
Petruza
Pour être précis - il charge les fichiers de configuration (comme httpd.conf et php.ini) une fois au démarrage. Les scripts PHP sont recommencés chaque fois qu'un script PHP est exécuté - il n'y a pas de mémoire de demande croisée dans une exécution de script PHP comme dans quelque chose comme mod_perl.
Devin Ceartas
2
@Petruza: gracieux signifie simplement qu'il ne tuera aucun processus qui est en train de servir une page à un utilisateur. Pour les trucs de développement, votre méthode est très bien, mais généralement quel que soit le script Apache que vous utilisez pour spécifier "démarrer" "arrêter" ou "redémarrer", vous pouvez simplement dire "gracieux" à la place et chaque processus attendra la fin de tout travail en cours avant de mourir et de réapparaître avec les nouveaux paramètres.
daveadams