Commandes utiles pour gérer Apache Web Server sous Linux


Dans ce didacticiel, nous allons décrire certaines des commandes de gestion de services Apache (HTTPD) les plus utilisées, que vous devez connaître en tant que développeur ou administrateur système et que vous devez conserver au bout de vos doigts. Nous allons afficher les commandes pour Systemd et SysVinit .

Assurez-vous que les commandes suivantes doivent être exécutées en tant qu'utilisateur root ou sudo et fonctionnent sur toutes les distributions Linux telles que CentOS , RHEL Fedora Debian et Ubuntu .

Installer le serveur Apache

Pour installer le serveur Web Apache, utilisez votre gestionnaire de packages 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
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 l'indicateur -V comme indiqué.

$ sudo httpd -V
OR
$ sudo apache2 -V
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 Apache

Pour vérifier que les fichiers de configuration Apache ne contiennent aucune erreur de syntaxe, exécutez la commande suivante, qui vérifie 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 lance le service Apache que pendant l'intervalle. Pour l'activer, démarrez-la au démarrage du système en exécutant 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 , puis 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 d'exécution 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 modifié 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êtez 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 de la commande Apache

Enfin et surtout, 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	
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)

Pour plus d'informations sur systemctl , consultez la rubrique: Comment gérer les services et unités "Systemd" à l'aide de "Systemctl" sous Linux.

Vous voudrez peut-être aussi lire ces articles suivants relatifs à Apache.

  1. 5 Tips to Boost the Performance of Your Apache Web Server
  2. How to Monitor Apache Web Server Load and Page Statistics
  3. How to Administrate the Apache Web Server Using “Apache GUI” Tool
  4. How to Change Apache HTTP Port in Linux
  5. 13 Apache Web Server Security and Hardening Tips
  6. Protect Apache Against Brute Force or DDoS Attacks Using Mod_Security and Mod_evasive Modules

C'est tout pour le moment! Dans cet article, nous avons expliqué les commandes de gestion de services Apache/HTTPD les plus utilisées que vous devez connaître, notamment le démarrage, l'activation, le redémarrage et l'arrêt d'Apache. Vous pouvez toujours nous contacter via le formulaire de commentaires ci-dessous pour toutes questions ou commentaires.