Commandes utiles pour gérer le serveur Web Apache sous Linux

Dans ce tutoriel, nous décrirons quelques-unes des commandes de gestion de service Apache (HTTPD) les plus couramment utilisées que vous devriez connaître en tant que développeur ou administrateur système et vous devriez garder ces commandes à portée de main. Nous montrerons des commandes pour à la fois Systemd et SysVinit.

Lire aussi: 10 Commandes Nginx les Plus Utilisées Que Tout Utilisateur Linux Doit Connaître

Assurez-vous que les commandes suivantes doivent être exécutées en tant qu’utilisateur root ou sudo et devraient fonctionner sur n’importe quelle distribution Linux telle que CentOS, RHEL, Fedora, Debian et Ubuntu.

Installer le Serveur Apache

Pour installer le serveur web Apache, utilisez votre gestionnaire de paquets de distribution par défaut comme indiqué.

$ sudo apt install apache2	    [On Debian/Ubuntu]
$ sudo yum install httpd	    [On RHEL/CentOS]
$ sudo dnf install httpd	    [On Fedora 22+]
$ sudo zypper install apache2	    [On openSUSE]

Vérifier la Version d’Apache

Pour vérifier la version installée de votre serveur web Apache sur votre système Linux, exécutez la commande suivante.

$ sudo httpd -v
OR
$ sudo apache2 -v
Exemple de Sortie
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09

Si vous souhaitez afficher le numéro de version d’Apache et les paramètres de compilation, utilisez le drapeau -V comme indiqué.

$ sudo httpd -V
OR
$ sudo apache2 -V
Exemple de Sortie
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09
Server's Module Magic Number: 20120211:24
Server loaded:  APR 1.4.8, APR-UTIL 1.5.2
Compiled using: APR 1.4.8, APR-UTIL 1.5.2
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/etc/httpd"
 -D SUEXEC_BIN="/usr/sbin/suexec"
 -D DEFAULT_PIDLOG="/run/httpd/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"

Vérifier les Erreurs de Syntaxe de Configuration d’Apache

Pour vérifier vos fichiers de configuration Apache pour d’éventuelles erreurs de syntaxe, exécutez la commande suivante, qui vérifiera la validité des fichiers de configuration avant de redémarrer le service.

$ sudo httpd -t
OR
$ sudo apache2ctl -t
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using tecmint.com. 
Set the 'ServerName' directive globally to suppress this message
Syntax OK

Démarrer le service Apache

Pour démarrer le service Apache, exécutez la commande suivante.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl start httpd     [On Systemd]
$ sudo service httpd start 	 [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl start apache2   [On Systemd]
$ sudo service apache2 start     [On SysVInit]

Activer le service Apache

La commande précédente ne démarre que le service Apache pour le moment, pour le rendre automatiquement démarré au démarrage du système, exécutez la commande suivante.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl enable httpd     [On Systemd]
$ sudo chkconfig httpd on 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl enable apache2   [On Systemd]
$ sudo chkconfig apache2 on       [On SysVInit]

Redémarrer le service Apache

Pour redémarrer Apache (arrêter et ensuite démarrer le service), exécutez la commande suivante.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl restart httpd     [On Systemd]
$ sudo service httpd restart 	   [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl restart apache2   [On Systemd]
$ sudo service apache2 restart     [On SysVInit]

Afficher l’état du service Apache

Pour vérifier les informations d’état de fonctionnement du service Apache, exécutez la commande suivante.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl status httpd     [On Systemd]
$ sudo service httpd status 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl status apache2   [On Systemd]
$ sudo service apache2 status     [On SysVInit]

Recharger le service Apache

Si vous avez apporté des modifications à la configuration du serveur Apache, vous pouvez demander au service de recharger sa configuration en exécutant la commande suivante.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl reload httpd     [On Systemd]
$ sudo service httpd reload 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl reload apache2   [On Systemd]
$ sudo service apache2 reload     [On SysVInit]

Arrêter le service Apache

Pour arrêter le service Apache, utilisez la commande suivante.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl stop httpd       [On Systemd]
$ sudo service httpd stop 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl stop apache2     [On Systemd]
$ sudo service apache2 stop     [On SysVInit]

Afficher l’aide des commandes Apache

Enfin, vous pouvez obtenir de l’aide sur les commandes de service Apache sous systemd en exécutant la commande suivante.

$ sudo httpd -h
OR
$ sudo apache2 -h		
OR
$ systemctl -h apache2	
Sample Output
Usage: httpd [-D name] [-d directory] [-f file]
             [-C "directive"] [-c "directive"]
             [-k start|restart|graceful|graceful-stop|stop]
             [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S] [-X]
Options:
  -D name            : define a name for use in  directives
  -d directory       : specify an alternate initial ServerRoot
  -f file            : specify an alternate ServerConfigFile
  -C "directive"     : process directive before reading config files
  -c "directive"     : process directive after reading config files
  -e level           : show startup errors of level (see LogLevel)
  -E file            : log startup errors to file
  -v                 : show version number
  -V                 : show compile settings
  -h                 : list available command line options (this page)
  -l                 : list compiled in modules
  -L                 : list available configuration directives
  -t -D DUMP_VHOSTS  : show parsed vhost settings
  -t -D DUMP_RUN_CFG : show parsed run settings
  -S                 : a synonym for -t -D DUMP_VHOSTS -D DUMP_RUN_CFG
  -t -D DUMP_MODULES : show all loaded modules 
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files
  -T                 : start without DocumentRoot(s) check
  -X                 : debug mode (only one worker, do not detach)

Vous pouvez trouver plus d’informations sur systemctl en consultant : Comment gérer les services et unités « Systemd » à l’aide de « Systemctl » sous Linux.

Vous voudrez peut-être également lire ces articles connexes sur Apache.

  1. 5 Conseils pour Améliorer les Performances de Votre Serveur Web Apache
  2. Comment Surveiller la Charge et les Statistiques de Pages du Serveur Web Apache
  3. Comment Administrer le Serveur Web Apache en Utilisant l’Outil « Apache GUI »
  4. Comment Changer le Port Apache HTTP sous Linux
  5. 13 Conseils de Sécurité et de Durcissement du Serveur Web Apache
  6. Protégez Apache Contre les Attaques par Force Brute ou DDoS en Utilisant les Modules Mod_Security et Mod_evasive

C’est tout pour le moment ! Dans cet article, nous avons expliqué les commandes de gestion de service Apache/HTTPD les plus couramment utilisées que vous devriez connaître, y compris le démarrage, l’activation, le redémarrage et l’arrêt d’Apache. Vous pouvez toujours nous contacter via le formulaire de feedback ci-dessous pour toute question ou commentaire.

Source:
https://www.tecmint.com/manage-apache-web-server-in-linux/