Cum să verificați ce module Apache sunt activate/încărcate în Linux


În acest ghid, vom vorbi pe scurt despre front-end-ul serverului web Apache și despre cum să enumerați sau să verificați ce module Apache au fost activate pe serverul dvs.

Apache este construit, bazat pe principiul modularității, în acest fel, le permite administratorilor de servere web să adauge diferite module pentru a-și extinde funcționalitățile primare și pentru a îmbunătăți și performanța Apache.

Unele dintre modulele Apache comune includ:

  1. mod_ssl – care oferă HTTPS pentru Apache.
  2. mod_rewrite – care permite potrivirea modelelor de adrese URL cu expresii regulate și efectuarea unei redirecționări transparente folosind trucuri .htaccess sau aplicarea unui răspuns de cod de stare HTTP.
  3. mod_security – care vă oferă să protejați Apache împotriva atacurilor Brute Force sau DDoS.
  4. mod_status – care vă permite să monitorizați încărcarea serverului web Apache și statica paginii.

În Linux, comanda apachectl sau apache2ctl este utilizată pentru a controla interfața serverului Apache HTTP, este un front-end pentru Apache.

Puteți afișa informațiile de utilizare pentru apache2ctl după cum urmează:

$ 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 poate funcționa în două moduri posibile, un mod Sys V init și un mod pass-through. În modul SysV init, apache2ctl preia comenzi simple, dintr-un singur cuvânt, în forma de mai jos:

$ apachectl command
OR
$ apache2ctl command

De exemplu, pentru a porni Apache și a verifica starea acestuia, rulați aceste două comenzi cu privilegii de utilizator root utilizând comanda sudo, în cazul în care sunteți un utilizator normal:

$ sudo apache2ctl start
$ sudo apache2ctl status
 ~ $ 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
 ~ $ 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

Și când operează în modul pass-through, apache2ctl poate prelua toate argumentele Apache în următoarea sintaxă:

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

Toate argumentele Apache pot fi enumerate după cum urmează:

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

Verificați modulele Apache activate

Prin urmare, pentru a verifica ce module sunt activate pe serverul dvs. web Apache, rulați comanda aplicabilă de mai jos pentru distribuția dvs., unde -t -D DUMP_MODULES este un argument Apache pentru a afișa toate modulele activate/încărcate :

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

Asta e tot! în acest tutorial simplu, am explicat cum să folosiți instrumentele front-end Apache pentru a lista modulele apache activate/încărcate. Rețineți că puteți lua legătura folosind formularul de feedback de mai jos pentru a ne trimite întrebările sau comentariile dvs. referitoare la acest ghid.