Comment vérifier quels modules Apache sont activés/chargés dans Linux

Dans ce guide, nous parlerons brièvement du serveur web Apache en frontal et comment lister ou vérifier quels modules Apache ont été activés sur votre serveur.

Apache est construit sur le principe de la modularité, ce qui permet aux administrateurs de serveur web d’ajouter différents modules pour étendre ses fonctionnalités principales et améliorer les performances d’Apache.

Lecture suggérée: 5 astuces pour améliorer les performances de votre serveur web Apache

Certains des modules Apache courants comprennent:

  1. mod_ssl – qui offre HTTPS pour Apache.
  2. mod_rewrite – qui permet de faire correspondre des motifs d’URL avec des expressions régulières, et d’effectuer une redirection transparente en utilisant des astuces .htaccess, ou d’appliquer une réponse de code d’état HTTP.
  3. mod_security – qui vous permet de protéger Apache contre les attaques par force brute ou DDoS.
  4. mod_status – qui vous permet de surveiller la charge du serveur web Apache et les statistiques des pages.

Sous Linux, la commande apachectl ou apache2ctl est utilisée pour contrôler l’interface du serveur HTTP Apache, c’est une interface avant pour Apache.

Vous pouvez afficher les informations d’utilisation pour apache2ctl comme ci-dessous:

$ apache2ctl help
OR
$ apachectl help
apachectl help
Usage: /usr/sbin/httpd [-D name] [-d directory] [-f file]
                       [-C "directive"] [-c "directive"]
                       [-k start|restart|graceful|graceful-stop|stop]
                       [-v] [-V] [-h] [-l] [-L] [-t] [-S]
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 settings (currently only vhost settings)
  -S                 : a synonym for -t -D DUMP_VHOSTS
  -t -D DUMP_MODULES : show all loaded modules 
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files

apache2ctl peut fonctionner de deux manières possibles, à savoir en mode init Sys V et en mode pass-through. En mode init SysV, apache2ctl prend des commandes simples d’un mot sous la forme suivante:

$ apachectl command
OR
$ apache2ctl command

Par exemple, pour démarrer Apache et vérifier son statut, exécutez ces deux commandes avec les privilèges de l’utilisateur root en utilisant la commande sudo, si vous êtes un utilisateur normal:

$ sudo apache2ctl start
$ sudo apache2ctl status
Check Apache Status
tecmint@TecMint ~ $ sudo apache2ctl start
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
httpd (pid 1456) already running
tecmint@TecMint ~ $ sudo apache2ctl status
Apache Server Status for localhost (via 127.0.0.1)

Server Version: Apache/2.4.18 (Ubuntu)
Server MPM: prefork
Server Built: 2016-07-14T12:32:26

-------------------------------------------------------------------------------

Current Time: Tuesday, 15-Nov-2016 11:47:28 IST
Restart Time: Tuesday, 15-Nov-2016 10:21:46 IST
Parent Server Config. Generation: 2
Parent Server MPM Generation: 1
Server uptime: 1 hour 25 minutes 41 seconds
Server load: 0.97 0.94 0.77
Total accesses: 2 - Total Traffic: 3 kB
CPU Usage: u0 s0 cu0 cs0
.000389 requests/sec - 0 B/second - 1536 B/request
1 requests currently being processed, 4 idle workers

__W__...........................................................
................................................................
......................

Scoreboard Key:
"_" Waiting for Connection, "S" Starting up, "R" Reading Request,
"W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
"C" Closing connection, "L" Logging, "G" Gracefully finishing,
"I" Idle cleanup of worker, "." Open slot with no current process

Et lorsqu’il fonctionne en mode pass-through, apache2ctl peut prendre tous les arguments Apache dans la syntaxe suivante:

$ apachectl [apache-argument]
$ apache2ctl [apache-argument]

Tous les arguments Apache peuvent être listés comme suit:

$ apache2 help    [On Debian based systems]
$ httpd help      [On RHEL based systems]

Vérifier les modules Apache activés

Par conséquent, pour vérifier quels modules sont activés sur votre serveur web Apache, exécutez la commande applicable ci-dessous pour votre distribution, où -t -D DUMP_MODULES est un argument Apache pour afficher tous les modules activés/chargés:

---------------  On Debian based systems --------------- 
$ apache2ctl -t -D DUMP_MODULES   
OR 
$ apache2ctl -M
---------------  On RHEL based systems --------------- 
$ apachectl -t -D DUMP_MODULES   
OR 
$ httpd -M
$ apache2ctl -M
List Apache Enabled Loaded Modules
[root@tecmint httpd]# apachectl -M
Loaded Modules:
 core_module (static)
 mpm_prefork_module (static)
 http_module (static)
 so_module (static)
 auth_basic_module (shared)
 auth_digest_module (shared)
 authn_file_module (shared)
 authn_alias_module (shared)
 authn_anon_module (shared)
 authn_dbm_module (shared)
 authn_default_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 authz_owner_module (shared)
 authz_groupfile_module (shared)
 authz_dbm_module (shared)
 authz_default_module (shared)
 ldap_module (shared)
 authnz_ldap_module (shared)
 include_module (shared)
....

C’est tout ! dans ce tutoriel simple, nous avons expliqué comment utiliser les outils frontaux Apache pour lister les modules Apache activés/chargés. Gardez à l’esprit que vous pouvez nous contacter en utilisant le formulaire de feedback ci-dessous pour nous envoyer vos questions ou commentaires concernant ce guide.

Source:
https://www.tecmint.com/check-apache-modules-enabled/