المتطلبات الأساسية
	- خادم Vultr يعمل حتى الآن Arch Linux. انظر هذا الدليل لمزيد من المعلومات.
- وصول سودو. 
	
		- الأوامر المطلوبة للتشغيل كجذر مسبوقة بـ #، والأوامر التي يمكن تشغيلها كمستخدم عادي من قبل$. الطريقة الموصى بها لتشغيل الأوامر كجذر هي ، كمستخدم عادي ، بادئة كل واحد منهمsudo.
 
- هل لديك محرر نصوص مثبتة، ويكون على دراية به، مثل vi،vim،nano،emacsوهلم جرا.
قم بتثبيت Apache 2.4 Web Server
إذا كنت تستخدم جدار حماية ، فستحتاج إلى تمكين حركة مرور TCP الواردة إلى المنفذ 80.
تثبيت Apache:
# pacman -S apache
قم بتشغيل Apache ، واجعله يبدأ بعد كل تمهيد:
# systemctl enable --now httpd
اختبر أن أباتشي قيد التشغيل. قم بزيارة http://YOUR-SERVER-WEB-ADDRESS-OR-IPوستشاهد صفحة تعرض "فهرس /". قم بتشغيل ip addrإذا كنت تريد معرفة عنوان IP.
ملف تهيئة أباتشي هو /etc/httpd/conf/httpd.conf. على الرغم من أن أباتشي يبدأ بواسطة المستخدم الجذر ، User httpفإنه يجعله يتحول على الفور إلى التشغيل مثل هذا المستخدم لأسباب أمنية. DocumentRoot "/srv/http"يحدد المكان الذي سيبحث فيه عن ملفات الويب. CustomLog "/var/log/httpd/access_log" commonيحدد المكان الذي سيتم فيه تسجيل الدخول إلى Apache الناجحة. ErrorLog "/var/log/httpd/error_log"تعيين حيث سيتم تسجيل الوصول إلى أباتشي هذا الخطأ.
تعطيل الفهارس
بشكل افتراضي ، إذا تم منح Apache دليلًا لا يجد ملف فهرس له ملحق تم تكوينه لاستخدامه ، فسيقوم تلقائيًا بإنشاء فهرس يعرض محتويات الدليل. يمكن اعتبار هذا ثغرة أمنية. لتعطيله، تحرير /etc/httpd/conf/httpd.confوداخل <Directory "/srv/http">، من Options، حذف Indexes. بمجرد إعادة التشغيل ، سيعطي Apache "تم حظر الوصول!" رسالة خطأ ما لم يكن هناك ملف مثل /srv/http/index.htmlموجود.
أعد تشغيل Apache:
# systemctl restart httpd
دلائل المستخدم
بشكل افتراضي ، ~/public_html/سيتم عرض دليل المستخدم في http://YOUR-SERVER-WEB-ADDRESS-OR-IP/~USERNAME/. ولكن ، httpيجب أن يكون لدى المستخدم حق وصول بت قابل للتنفيذ إلى دليل المستخدم public_htmlودليله:
$ mkdir ~/public_html
$ chmod o+x ~/
$ chmod o+x ~/public_html
بالإضافة إلى ذلك ، httpيجب أن يكون لدى المستخدم حق الوصول للقراءة إلى الملفات الفردية. عند الضرورة ، قم بتشغيل الأمر التالي:
$ chmod o+r ~/public_html/<FILES>
إذا كنت ترغب في تعطيل public_htmlدلائل المستخدم من وجودها على خادم الويب الخاص بك ، بغض النظر عن أذونات الدليل والملف ، فقم بالتعليق على هذا السطر (إضافة #إلى البداية) في /etc/httpd/conf/httpd.conf:
Include conf/extra/httpd-userdir.conf
أعد تشغيل Apache:
# systemctl restart httpd
مضيفون افتراضيون
يمكنك استضافة أسماء نطاقات متعددة من خادم Apache نفسه وتقديم محتوى مختلف لها.
قم بإنشاء مجلد للاحتفاظ بتكوينات المضيف الظاهري:
# mkdir /etc/httpd/conf/vhosts
قم بإنشاء ملف تكوين لكل مضيف افتراضي ، مثل /etc/httpd/conf/vhosts/YOUR-DOMAIN-NAME.com:
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/srv/YOUR-DOMAIN-NAME.com"
    ServerName YOUR-DOMAIN-NAME.com
    ServerAlias YOUR-DOMAIN-NAME.com
    ErrorLog "/var/log/httpd/YOUR-DOMAIN-NAME.com-error_log"
    CustomLog "/var/log/httpd/YOUR-DOMAIN-NAME.com-access_log" common
    <Directory "/srv/YOUR-DOMAIN-NAME.com">
        Require all granted
    </Directory>
</VirtualHost>
جعل دليل خدمة المضيف الظاهري:
# mkdir /srv/YOUR-DOMAIN-NAME.com
في النهاية /etc/httpd/conf/httpd.conf، قم بتضمين كل من ملفات تكوين المضيف الظاهري:
Include conf/vhosts/YOUR-DOMAIN-NAME.com
أعد تشغيل Apache:
# systemctl restart httpd
الطلبات التي يتلقاها أباتشي YOUR-DOMAIN-NAME.comسيتم خدمتها من /srv/YOUR-DOMAIN-NAME.com. طلبات مذكرة للأباتشي يست مطابقة محددة ServerNameأو ServerAlias، فقط عنوان IP، أو اسم نطاق آخر حل لIP الخاص بك، وسيظل يقدم من المضيف الظاهري الأول الذي تم تضمينه. ومع ذلك ، لا يزال عليك اعتبار أي شيء بشكل عام DocumentRoot، والذي يكون افتراضيًا /srv/http، متاحًا إلى حد ما.