במדריך זה, נדבר בקצרה על החזית של שרת האינטרנט Apache ועל איך לרשומה או לבדוק אילו מודולים של Apache הופעלו על השרת שלך.
Apache מבוסס על עקרון של תוספות, ובכך מאפשר למנהלי שרתי האינטרנט להוסיף מודולים שונים כדי להרחיב את פונקציותיו העיקריות וכן לשפר את ביצועי apache.
קראו גם: 5 טיפים לשיפור ביצועי שרת האינטרנט שלכם באמצעות Apache
כמה מהמודולים השכיחים של Apache כוללים:
- mod_ssl – המציע HTTPS עבור Apache.
- mod_rewrite – המאפשר התאמת תבניות url עם ביטויים רגולריים, וביצוע הפניה שקופה באמצעות קישוריות .htaccess, או להחיל קוד תגובת סטטוס HTTP.
- mod_security – המציע לך להגנה על Apache נגד התקפות לחץ עבור או התקפות DDoS.
- mod_status – שמאפשר לך למעקב אחר עומס שרת האינטרנט Apache וסטטיסטיקות של עמודים.
ב-Linux, הפקודה apachectl או apache2ctl משמשת לשליטה בממשק שרת ה-HTTP של Apache, והיא מהווה חלק חיצוני ל-Apache.
ניתן להציג את מידע השימוש ב־apache2ctl כך:
$ 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 יכולה לפעול בשני מצבים אפשריים, מצב Sys V init ומצב pass-through. במצב SysV init, apache2ctl מקבלת פקודות פשוטות, בצורת הבאה:
$ apachectl command OR $ apache2ctl command
לדוגמה, כדי להפעיל את Apache ולבדוק את מצבו, יש להריץ שתי הפקודות הללו עם הרשאות משתמש root באמצעות הפקודה sudo, אם אתה משתמש רגיל:
$ 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
וכאשר נמצאת במצב pass-through, apache2ctl יכולה לקבל את כל הארגומנטים של Apache בתחביר הבא:
$ apachectl [apache-argument] $ apache2ctl [apache-argument]
כל הארגומנטים של Apache ניתן לרשומם כך:
$ apache2 help [On Debian based systems] $ httpd help [On RHEL based systems]
בדיקת מודולי Apache שמופעלים
לכן, כדי לבדוק אילו מודולים מופעלים על שרת האינטרנט שלך של Apache, יש להריץ את הפקודה הרלוונטית להפצתך, כאשר -t -D DUMP_MODULES
הוא ארגומנט של Apache להצגת כל המודולים שמופעלים/טעונים:
--------------- 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) ....
משתמש בטופס משוב לשלוח לנו את שאלותיכם או הערותיכם בנוגע למדריך זה.
Source:
https://www.tecmint.com/check-apache-modules-enabled/