Niveau de difficulté | Facile |
Privilèges de la racine | Oui |
Exigences | Terminal Linux ou Unix |
Catégorie | Gestion des processus |
Conditions préalables | Apache 2.x/2.4 |
Compatibilité avec les systèmes d'exploitation | BSD-Linux-macOS-Unix-WSL |
Durée de lecture estimée | 4 minutes |
Tout d'abord, connectez-vous à votre serveur web en utilisant le client ssh, si le serveur n'est pas dans votre centre de données local :
$ ssh root@your-server-com #Linode box
$ ssh ec2-user@aws-ip-here # AWS
$ ssh vivek@192.168.2.100 # My home dev server
Une fois connecté, tapez les commandes suivantes en fonction de votre variante Linux ou Unix. Voir comment trouver le nom de la distribution Linux et vérifier votre version de Linux en utilisant le CLI pour plus d'informations.
Commandes spécifiques à Debian/Ubuntu Linux pour démarrer/arrêter/redémarrer Apache
Vous pouvez soit utiliser le service ou la commande /etc/init.d/ comme suit sur Debian Linux version 7.x ou Ubuntu Linux version Ubuntu 14.10 ou plus ancienne:
Redémarrer le serveur web Apache 2, entrer :
# /etc/init.d/apache2 restart
OU
$ sudo /etc/init.d/apache2 restart
OU
$ sudo service apache2 restart
Pour arrêter le serveur web Apache 2, entrez :
# /etc/init.d/apache2 stop
OU
$ sudo /etc/init.d/apache2 stop
OU
$ sudo service apache2 stop
Pour démarrer le serveur web Apache 2, entrez :
# /etc/init.d/apache2 start
OU
$ sudo /etc/init.d/apache2 start
OU
$ sudo service apache2 start
Une remarque sur Debian/Ubuntu Linux systemd utilisateurs
Utilisez la commande systemctl suivante sur Debian Linux version 8.x ou Ubuntu Linux version Ubuntu 15.04 ou supérieure:
## Start command ##
$ sudo systemctl start apache2.service
## Stop command ##
$ sudo systemctl stop apache2.service
## Restart command ##
$ sudo systemctl restart apache2.service
Nous pouvons voir le statut en utilisant la commande suivante :
$ sudo systemctl status apache2.service
Sorties :
● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2021-02-24 20:39:39 UTC; 5 days ago Docs: https://httpd.apache.org/docs/2.4/ Process: 115 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Process: 15247 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS) Main PID: 128 (apache2) Tasks: 6 (limit: 4672) Memory: 16.4M CGroup: /system.slice/apache2.service ├─ 128 /usr/sbin/apache2 -k start ├─15254 /usr/sbin/apache2 -k start ├─15255 /usr/sbin/apache2 -k start ├─15256 /usr/sbin/apache2 -k start ├─15257 /usr/sbin/apache2 -k start └─15258 /usr/sbin/apache2 -k start Feb 27 00:00:23 ubuntu-db-mgmnt systemd[1]: Reloaded The Apache HTTP Server. Feb 28 00:00:23 ubuntu-db-mgmnt systemd[1]: Reloading The Apache HTTP Server.
Commandes spécifiques CentOS/RHEL (Red Hat) Linux version 4.x/5.x/6.x ou plus anciennes
Utilisez la commande service :
## Start ##
# service httpd start
## Stop ##
# service httpd stop
## Restart ##
# service httpd restart
Commandes spécifiques CentOS/Fedora/RHEL (Red Hat) Linux version 7.x ou plus récente
La plupart des distributions modernes basées sur RHEL utilisent maintenant systemd, vous devez donc utiliser la commande systemctl suivante :
## Start command ##
$ sudo systemctl start httpd.service
## Stop command ##
$ sudo systemctl stop httpd.service
## Restart command ##
$ sudo systemctl restart httpd.service
Les commandes ci-dessus fonctionnent avec RHEL, CentOS, RockyLinux, Fedora et AlmaLinux.
Alpine Linux démarre / arrête / redémarre Apache 2 en utilisant openrc
Nous devons utiliser la commande de service en tant qu'utilisateur root :
# service apache2 start
# service apache2 stop
# service apache2 status
# service apache2 restart
Session :
* Stopping apache2 ... * Starting apache2
Utilisateurs d'Unix FreeBSD
L'utilisateur de FreeBSD peut redémarrer Apache comme suit :
# /usr/local/etc/rc.d/apache22 restart
# service restart apache22
# service stop apache22
# service start apache22
La dernière version de FreeBSD 13 est livrée avec apache24, donc les commandes sont :
# /usr/local/etc/rc.d/apache24 restart
# service restart apache24
# service stop apache24
# service start apache24
Méthode générique pour démarrer/arrêter/redémarrer Apache sur une machine Linux/Unix/*BSD
Tout d'abord, utilisez la commande type ou la commande command pour trouver le chemin d'accès à apachectl ou apachectl2 :
type -a apachectl
Sorties du serveur Ubuntu Linux 20.04 LTS :
apachectl is /usr/sbin/apachectl apachectl is /sbin/apachectl
Ensuite, utilisez la syntaxe suivante (doit être exécutée en tant qu'utilisateur root) :
## stop it ##
# apachectl -k stop
## restart it ##
# apachectl -k restart
## graceful restart it ##
# apachectl -k graceful
## Start it ##
# apachectl -f /path/to/your/httpd.conf
# apachectl -f /usr/local/apache2/conf/httpd.conf
L'apachectl/apache2ctl est l'interface de contrôle du serveur HTTP Apache. Les autres options sont les suivantes :
Démarrer le démon Apache
# apachectl start
# OR #
# apache2ctl start
Arrête le démon Apache
# apachectl stop
# OR #
# apache2ctl stop
Redémarre le démon Apache en lui envoyant un SIGHUP.
# apachectl restart
# OR #
# apache2ctl restart
Affiche un rapport d'état complet à partir de mod_status
# apachectl fullstatus
# OR #
# apache2ctl fullstatus
Affiche un bref rapport d'état
# apachectl status
# OR #
# apache2ctl status
Redémarre le démon Apache en lui envoyant un SIGUSR1.
# apachectl graceful
# OR #
# apache2ctl graceful
Nous pouvons aussi arrêter gracieusement le démon Apache httpd ? Essayez :
# apachectl graceful-stop
# OR #
# apache2ctl graceful-stop
Exécuter un test de syntaxe du fichier de configuration
# apachectl configtest
# OR #
# apache2ctl configtest
Résumé
Vous avez appris à démarrer, arrêter ou redémarrer le serveur web Apache 2 à l'aide d'une ligne de commande ou d'une session basée sur ssh. Utilisez la commande man ou la commande help pour lire les pages de manuel suivantes :
$ man service
$ man systemctl
$ man httpd
$ httpd --help
$ man apachectl