Linux'ta Hangi Apache Modüllerinin Etkinleştirildiğini/Yüklendiğini Kontrol Etme


Bu kılavuzda kısaca Apache web sunucusu ön uçundan ve sunucunuzda hangi Apache modüllerinin etkinleştirildiğini nasıl listeleyeceğinizden veya kontrol edebileceğinizden bahsedeceğiz.

Apache, modülerlik ilkesine dayalı olarak oluşturulmuştur; bu şekilde, web sunucusu yöneticilerinin, birincil işlevlerini genişletmek ve Apache performansını artırmak için farklı modüller eklemesine olanak tanır.

Önerilen Okuma: Apache Web Sunucunuzun Performansını Artıracak 5 İpucu

Yaygın Apache modüllerinden bazıları şunlardır:

  1. mod_ssl – Apache için HTTPS sunar.
  2. mod_rewrite – URL kalıplarını normal ifadelerle eşleştirmeye ve .htaccess hilelerini kullanarak şeffaf bir yönlendirme gerçekleştirmeye veya bir HTTP durum kodu yanıtı uygulamaya olanak tanır.
  3. mod_security – Apache'yi Brute Force veya DDoS saldırılarına karşı korumanızı sağlar.
  4. mod_status – Apache web sunucusu yükünü ve sayfa statiğini izlemenize olanak tanır.

Linux'ta apachectl veya apache2ctl komutu Apache HTTP sunucusu arayüzünü kontrol etmek için kullanılır, Apache'nin ön ucudur.

Apache2ctl'nin kullanım bilgilerini aşağıdaki gibi görüntüleyebilirsiniz:

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 iki olası modda çalışabilir: Sys V başlatma modu ve geçiş modu. SysV init modunda, Apache2ctl aşağıdaki biçimdeki basit, tek kelimelik komutları alır:

apachectl command
OR
apache2ctl command

Örneğin, Apache'i başlatmak ve durumunu kontrol etmek için, normal bir kullanıcı olmanız durumunda sudo komutunu kullanarak bu iki komutu kök kullanıcı ayrıcalıklarıyla çalıştırın:

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

Ve doğrudan geçiş modunda çalışırken, Apache2ctl aşağıdaki sözdizimindeki tüm Apache bağımsız değişkenlerini alabilir:

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

Tüm Apache argümanları şu şekilde sıralanabilir:

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

Etkin Apache Modüllerini Kontrol Edin

Bu nedenle, Apache web sunucunuzda hangi modüllerin etkinleştirildiğini kontrol etmek için dağıtımınıza uygun aşağıdaki komutu çalıştırın; burada -t -D DUMP_MODULES, tüm etkin/yüklü modülleri gösteren bir Apache argümanıdır. :

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

Bu kadar! Bu basit eğitimde, etkin/yüklü Apache modüllerini listelemek için Apache ön uç araçlarının nasıl kullanılacağını açıkladık. Bu kılavuzla ilgili sorularınızı veya yorumlarınızı bize iletmek için aşağıdaki geri bildirim formunu kullanarak iletişime geçebileceğinizi unutmayın.