Zoeken op website

Hoe u kunt controleren welke Apache-modules zijn ingeschakeld/geladen in Linux


In deze handleiding zullen we het kort hebben over de front-end van de Apache-webserver en hoe u kunt weergeven of controleren welke Apache-modules op uw server zijn ingeschakeld.

Apache is gebouwd op basis van het principe van modulariteit. Op deze manier stelt het webserverbeheerders in staat verschillende modules toe te voegen om de primaire functionaliteiten uit te breiden en ook de prestaties van Apache te verbeteren.

Aanbevolen leesmateriaal: 5 tips om de prestaties van uw Apache-webserver te verbeteren

Enkele veel voorkomende Apache-modules zijn:

  1. mod_ssl – dat HTTPS voor Apache biedt.
  2. mod_rewrite – waarmee u URL-patronen kunt matchen met reguliere expressies, en een transparante omleiding kunt uitvoeren met behulp van .htaccess-trucs, of een HTTP-statuscode-antwoord kunt toepassen.
  3. mod_security – waarmee u Apache kunt beschermen tegen Brute Force- of DDoS-aanvallen.
  4. mod_status – waarmee u de belasting van de Apache-webserver en de paginastatistieken kunt controleren.

In Linux wordt de opdracht apachectl of apache2ctl gebruikt om de Apache HTTP-serverinterface te besturen. Het is een front-end voor Apache.

U kunt de gebruiksinformatie voor apache2ctl als volgt weergeven:

apache2ctl help
OR
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 kan in twee mogelijke modi functioneren, een Sys V init modus en een pass-through modus. In de SysV init-modus neemt apache2ctl eenvoudige opdrachten van één woord in de onderstaande vorm:

apachectl command
OR
apache2ctl command

Om bijvoorbeeld Apache te starten en de status ervan te controleren, voert u deze twee opdrachten uit met rootgebruikersrechten door de opdracht sudo te gebruiken, als u een normale gebruiker bent:

sudo apache2ctl start
sudo apache2ctl 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

En als je in de pass-through-modus werkt, kan apache2ctl alle Apache-argumenten in de volgende syntaxis overnemen:

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

Alle Apache-argumenten kunnen als volgt worden weergegeven:

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

Controleer ingeschakelde Apache-modules

Om te controleren welke modules zijn ingeschakeld op uw Apache-webserver, voert u daarom de toepasselijke opdracht hieronder uit voor uw distributie, waarbij -t -D DUMP_MODULES een Apache-argument is om alle ingeschakelde/geladen modules weer te geven :

---------------  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
[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)
....

Dat is alles! in deze eenvoudige tutorial hebben we uitgelegd hoe je de Apache front-end tools kunt gebruiken om ingeschakelde/geladen Apache-modules weer te geven. Houd er rekening mee dat u via het onderstaande feedbackformulier contact met ons kunt opnemen om ons uw vragen of opmerkingen over deze handleiding te sturen.