J'utilise Apache2 pour un projet et je me demande quelle est exactement la différence entre:
service Apache2 restart
service Apache2 reload
service Apache2 graceful
?
Merci pour vos réponses.
Il y a une différence principale entre les quatre différentes manières d'arrêter/redémarrer ce que fait le processus principal à propos de ses threads et de lui-même.
Notez qu'Apache recommande d'utiliser apachectl -k
comme commande, et pour systemd, la commande est remplacée par httpd -k
apachectl -k stop
ou httpd -k stop
Cela indique au processus de tuer tous ses threads, puis de quitter
apachectl -k graceful
ou httpd -k graceful
Apache conseillera à ses threads de se fermer lorsqu'il est inactif, puis Apache recharge la configuration (il ne se ferme pas lui-même), cela signifie que les statistiques ne sont pas réinitialisées.
apachectl -k restart
ou httpd -k restart
Cela est similaire à l'arrêt, dans la mesure où le processus tue ses threads, mais le processus recharge ensuite le fichier de configuration, plutôt que de se tuer.
apachectl -k graceful-stop
ou httpd -k graceful-stop
Cela agit comme -k graceful
mais au lieu de recharger la configuration, il cessera de répondre aux nouvelles requêtes et ne vivra que tant que les anciens threads seront présents. La combinaison de cela avec une nouvelle instance de httpd
peut être très puissante pour l'exécution simultanée d'apaches lors de la mise à jour des fichiers de configuration.
Source: https://httpd.Apache.org/docs/2.4/stopping.html
Recommandation: utilisez -k graceful
sauf s'il y a un problème avec le processus principal lui-même, auquel cas une combinaison de -k stop
et -k start
ou -k graceful-stop
et -k start
sont les options de choix.
Différence entre "redémarrer" et "recharger"
Redémarrage normal et redémarrage gracieux, vous pouvez consulter l'article:
https://teckadmin.wordpress.com/2013/10/23/difference-between-graceful-restart-and-normal-restart/
On dirait que graceful
et reload
sont les mêmes pour Apache2
Dans /etc/init.d/Apache2
:
graceful | reload | force-reload)
# rest of the script