Kā pārbaudīt, kuri Apache moduļi ir iespējoti/ielādēti Linux


Šajā ceļvedī mēs īsi runāsim par Apache tīmekļa servera priekšgalu un to, kā uzskaitīt vai pārbaudīt, kuri Apache moduļi ir iespējoti jūsu serverī.

Apache ir veidots, pamatojoties uz modularitātes principu, tādējādi tas ļauj tīmekļa servera administratoriem pievienot dažādus moduļus, lai paplašinātu tā primārās funkcijas un uzlabotu arī apache veiktspēju.

Daži no izplatītākajiem Apache moduļiem ietver:

  1. mod_ssl - kas piedāvā HTTPS Apache.
  2. mod_rewrite - kas ļauj saskaņot URL modeļus ar regulārajām izteiksmēm un veikt caurspīdīgu novirzīšanu, izmantojot .htaccess trikus, vai lietot HTTP statusa koda atbildi.
  3. mod_security - kas piedāvā aizsargāt Apache pret Brute Force vai DDoS uzbrukumiem.
  4. mod_status - kas ļauj pārraudzīt Apache tīmekļa servera ielādi un lapu statistiku.

Linux operētājsistēmā Apache HTTP servera saskarnes kontrolei tiek izmantota komanda apachectl vai apache2ctl, tā ir Apache priekšgals.

Apache2ctl lietojuma informāciju varat parādīt šādi:

$ 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 var darboties divos iespējamos režīmos, Sys V iniciācijas režīmā un caurlaides režīmā. SysV init režīmā apache2ctl veic vienkāršas viena vārda komandas zemāk esošajā formā:

$ apachectl command
OR
$ apache2ctl command

Piemēram, lai palaistu Apache un pārbaudītu tā statusu, palaidiet šīs divas komandas ar root lietotāja tiesībām, izmantojot sudo komandu, ja esat parasts lietotājs:

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

Darbojoties caurlaides režīmā, apache2ctl var izmantot visus Apache argumentus šādā sintaksē:

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

Visus Apache argumentus var uzskaitīt šādi:

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

Tāpēc, lai pārbaudītu, kuri moduļi ir iespējoti jūsu Apache tīmekļa serverī, palaidiet zemāk piemēroto komandu savai izplatīšanai, kur -t -D DUMP_MODULES ir Apache arguments, lai parādītu visus iespējotos/ielādētos moduļus. :

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

Tas ir viss! Šajā vienkāršajā apmācībā mēs paskaidrojām, kā izmantot Apache priekšgala rīkus, lai uzskaitītu iespējotos/ielādētos Apache moduļus. Paturiet prātā, ka varat sazināties, izmantojot zemāk esošo atsauksmju veidlapu, lai nosūtītu mums jautājumus vai komentārus par šo rokasgrāmatu.