Comment savoir si Apache fonctionne (ou est configuré pour fonctionner) en tant que prefork ou worker ?
Réponses
Trop de publicités?Les réponses données par Series8217 et Andol sont toutes deux incorrectes.
La question était de savoir comment savoir si Apache est en cours d'exécution Prétravailleur ou travailleur. Les conseils donnés par les autres réponses ne font qu'indiquer ce que le par défaut Le MPM est (basé sur des modules compilés), pas si ce choix par défaut ou un autre choix est utilisé à l'heure actuelle.
Si httpd -V
montre prefork, cela signifie simplement que prefork est le MPM compilé par défaut. Il est possible d'y déroger en modifiant un paramètre du fichier de configuration d'Apache, comme le montre cette procédure :
- Modifier le fichier de configuration (par exemple
/etc/sysconfig/httpd
sur CentOS / RedHat) - Ajouter ou décommenter cette ligne :
HTTPD=/usr/sbin/httpd.worker
- Redémarrer Apache
Ce processus permet de savoir quel MPM est actuellement en cours d'exécution :
- Activer Apache mod_info
- Interroger l'url mod_info, typiquement
curl localhost/server-info
- La section "Paramètres du serveur" affiche "Nom MPM : Travailleur"
- Exécuter
httpd -V
encore une fois - il y aura toujours prefork, et non worker
En résumé :
httpd -V
indique l'option par défaut et non l'option en cours d'utilisation
Sur de très nombreux sites web, on trouve des réponses indiquant qu'il faut utiliser httpd -V
pour savoir si Apache fonctionne en mode prefork ou worker. Ils sont tous erronés. Essayez la procédure ci-dessus pour vous en convaincre.
Le MPM est configuré au moment de la compilation. Une façon de s'en rendre compte par la suite est de lister les modules compilés. Cette liste inclura le MPM choisi. La liste peut être obtenue en exécutant le binaire apache, avec l'option -l.
andreas@halleck:~$ apache2 -l
Compiled in modules:
core.c
mod_log_config.c
mod_logio.c
worker.c
http_core.c
mod_so.c
andreas@halleck:~$
Nous trouvons ici le module worker.c, c'est pourquoi j'exécute le MPM worker.
- Réponses précédentes
- Plus de réponses