أوامر مفيدة لإدارة خادم الويب Apache في Linux

في هذا البرنامج التعليمي، سنصف بعض من أكثر الأوامر الشائعة استخدامًا لإدارة خدمة أباتشي (HTTPD) التي يجب أن تعرفها كمطور أو مسؤول نظام ويجب عليك الاحتفاظ بهذه الأوامر على متناول يدك. سنوضح الأوامر لكلاً من Systemd و SysVinit.

اقرأ أيضًا: 10 من أكثر أوامر Nginx استخدامًا يجب على كل مستخدم لينكس أن يعرفها

تأكد من أن الأوامر التالية يجب تنفيذها كمستخدم جذر أو مستخدم sudo ويجب أن تعمل على أي توزيع لينكس مثل CentOS، RHEL، Fedora، Debian، و Ubuntu.

تثبيت خادم أباتشي

لتثبيت خادم الويب أباتشي، استخدم مدير الحزم الافتراضي للتوزيع الخاص بك كما هو موضح.

$ sudo apt install apache2	    [On Debian/Ubuntu]
$ sudo yum install httpd	    [On RHEL/CentOS]
$ sudo dnf install httpd	    [On Fedora 22+]
$ sudo zypper install apache2	    [On openSUSE]

فحص إصدار أباتشي

للتحقق من الإصدار المثبت لخادم الويب أباتشي على نظام التشغيل لينكس الخاص بك، قم بتشغيل الأمر التالي.

$ sudo httpd -v
OR
$ sudo apache2 -v
الناتج عينة
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09

إذا كنت ترغب في عرض رقم إصدار أباتشي وإعدادات التجميع، استخدم العلم -V كما هو موضح.

$ sudo httpd -V
OR
$ sudo apache2 -V
الناتج عينة
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov  5 2018 01:47:09
Server's Module Magic Number: 20120211:24
Server loaded:  APR 1.4.8, APR-UTIL 1.5.2
Compiled using: APR 1.4.8, APR-UTIL 1.5.2
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/etc/httpd"
 -D SUEXEC_BIN="/usr/sbin/suexec"
 -D DEFAULT_PIDLOG="/run/httpd/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"

فحص أخطاء صيغة تكوين أباتشي

لفحص ملفات تكوين أباتشي الخاصة بك عن أي أخطاء صيغة، قم بتشغيل الأمر التالي، الذي سيتحقق من صحة ملفات التكوين، قبل إعادة تشغيل الخدمة.

$ sudo httpd -t
OR
$ sudo apache2ctl -t
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using tecmint.com. 
Set the 'ServerName' directive globally to suppress this message
Syntax OK

بدء خدمة Apache

لبدء خدمة Apache، قم بتشغيل الأمر التالي.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl start httpd     [On Systemd]
$ sudo service httpd start 	 [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl start apache2   [On Systemd]
$ sudo service apache2 start     [On SysVInit]

تمكين خدمة Apache

الأمر السابق يبدأ فقط خدمة Apache مؤقتًا، لتمكينها من البدء التلقائي عند تشغيل النظام، قم بتشغيل الأمر التالي.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl enable httpd     [On Systemd]
$ sudo chkconfig httpd on 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl enable apache2   [On Systemd]
$ sudo chkconfig apache2 on       [On SysVInit]

إعادة تشغيل خدمة Apache

لإعادة تشغيل Apache (إيقاف ثم بدء الخدمة)، قم بتشغيل الأمر التالي.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl restart httpd     [On Systemd]
$ sudo service httpd restart 	   [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl restart apache2   [On Systemd]
$ sudo service apache2 restart     [On SysVInit]

عرض حالة خدمة Apache

للتحقق من معلومات حالة تشغيل خدمة Apache، قم بتشغيل الأمر التالي.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl status httpd     [On Systemd]
$ sudo service httpd status 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl status apache2   [On Systemd]
$ sudo service apache2 status     [On SysVInit]

إعادة تحميل خدمة Apache

إذا قمت بإجراء أي تغييرات على تكوين خادم Apache، يمكنك توجيه الخدمة لإعادة تحميل تكوينها عن طريق تشغيل الأمر التالي.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl reload httpd     [On Systemd]
$ sudo service httpd reload 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl reload apache2   [On Systemd]
$ sudo service apache2 reload     [On SysVInit]

إيقاف خدمة Apache

لإيقاف خدمة Apache، استخدم الأمر التالي.

------------ On CentOS/RHEL ------------ 
$ sudo systemctl stop httpd       [On Systemd]
$ sudo service httpd stop 	  [On SysVInit]

------------ On Ubunt/Debian  ------------
$ sudo systemctl stop apache2     [On Systemd]
$ sudo service apache2 stop     [On SysVInit]

عرض مساعدة الأوامر Apache

وأخيرًا، يمكنك الحصول على مساعدة حول أوامر خدمة Apache تحت systemd عن طريق تشغيل الأمر التالي.

$ sudo httpd -h
OR
$ sudo apache2 -h		
OR
$ systemctl -h apache2	
نموذج الإخراج
Usage: httpd [-D name] [-d directory] [-f file]
             [-C "directive"] [-c "directive"]
             [-k start|restart|graceful|graceful-stop|stop]
             [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S] [-X]
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 vhost settings
  -t -D DUMP_RUN_CFG : show parsed run settings
  -S                 : a synonym for -t -D DUMP_VHOSTS -D DUMP_RUN_CFG
  -t -D DUMP_MODULES : show all loaded modules 
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files
  -T                 : start without DocumentRoot(s) check
  -X                 : debug mode (only one worker, do not detach)

يمكنك العثور على مزيد من المعلومات حول systemctl من خلال الاطلاع على: كيفية إدارة خدمات ووحدات ‘Systemd’ باستخدام ‘Systemctl’ في نظام Linux.

قد ترغب أيضًا في قراءة هذه المقالات ذات الصلة بـ Apache.

  1. 5 نصائح لتعزيز أداء خادم الويب Apache الخاص بك
  2. كيفية مراقبة حمل خادم الويب Apache وإحصائيات الصفحة
  3. كيفية إدارة خادم الويب Apache باستخدام أداة “Apache GUI”
  4. كيفية تغيير منفذ Apache HTTP في نظام Linux
  5. 13 نصيحة لأمان وتقوية خادم الويب Apache
  6. حماية Apache ضد هجمات القوة العنيفة أو DDoS باستخدام وحدات Mod_Security و Mod_evasive

هذا كل شيء للآن! في هذا المقال، قمنا بشرح الأوامر الأكثر استخدامًا في إدارة خدمة Apache/HTTPD التي يجب عليك معرفتها، بما في ذلك بدء التشغيل، وتمكينها، وإعادة التشغيل، وإيقاف Apache. يمكنك دائمًا الوصول إلينا عبر نموذج التعليقات أدناه لأي أسئلة أو تعليقات.

Source:
https://www.tecmint.com/manage-apache-web-server-in-linux/