Kuinka tarkistaa, mitkä Apache-moduulit ovat käytössä/ladattuja Linuxissa


Tässä oppaassa puhumme lyhyesti Apache-verkkopalvelimen käyttöliittymästä ja kuinka luetellaan tai tarkistetaan, mitkä Apache-moduulit on otettu käyttöön palvelimellasi.

Apache on rakennettu modulaarisuuden periaatteella, joten se antaa verkkopalvelimen järjestelmänvalvojille mahdollisuuden lisätä erilaisia moduuleja laajentaakseen sen ensisijaisia toimintoja ja parantaakseen myös apachen suorituskykyä.

Suositeltu luku: 5 vinkkiä Apache-verkkopalvelimesi suorituskyvyn parantamiseen

Jotkut yleisimmistä Apache-moduuleista ovat:

  1. mod_ssl – joka tarjoaa HTTPS:n Apachelle.
  2. mod_rewrite – joka mahdollistaa URL-mallien yhdistämisen säännöllisten lausekkeiden kanssa ja läpinäkyvän uudelleenohjauksen .htaccess-temppujen avulla tai HTTP-tilakoodivastauksen käyttämisen.
  3. mod_security – jonka avulla voit suojata Apachea Brute Force- tai DDoS-hyökkäyksiltä.
  4. mod_status – jonka avulla voit seurata Apache-verkkopalvelimen kuormitusta ja sivun statiikkaa.

Linuxissa apachectl- tai apache2ctl-komentoa käytetään Apachen HTTP-palvelimen käyttöliittymän ohjaamiseen, se on Apachen käyttöliittymä.

Voit näyttää apache2ctl:n käyttötiedot seuraavasti:

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 voi toimia kahdessa mahdollisessa tilassa, Sys V init -tilassa ja pass-through -tilassa. SysV-init-tilassa apache2ctl ottaa yksinkertaisia, yksisanaisia komentoja alla olevassa muodossa:

apachectl command
OR
apache2ctl command

Jos haluat esimerkiksi käynnistää Apachen ja tarkistaa sen tilan, suorita nämä kaksi komentoa pääkäyttäjän oikeuksilla käyttämällä sudo-komentoa, jos olet tavallinen käyttäjä:

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

Ja pass-through-tilassa apache2ctl voi ottaa kaikki Apache-argumentit seuraavassa syntaksissa:

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

Kaikki Apache-argumentit voidaan luetella seuraavasti:

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

Valitse Käytössä olevat Apache-moduulit

Siksi, jotta voit tarkistaa, mitkä moduulit ovat käytössä Apache-verkkopalvelimessasi, suorita alla oleva komento jakelullesi, jossa -t -D DUMP_MODULES on Apache-argumentti, joka näyttää kaikki käytössä olevat/ladatut moduulit. :

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

Siinä kaikki! Tässä yksinkertaisessa opetusohjelmassa selitimme, kuinka Apachen käyttöliittymätyökaluja käytetään luetteloimaan käytössä olevat/ladatut apache-moduulit. Muista, että voit ottaa yhteyttä alla olevalla palautelomakkeella lähettääksesi meille kysymyksiä tai kommentteja tästä oppaasta.