هذا المقال هو الجزء الأول من مشروع شرح تثبيت خادم Nginx وتشغيل موقع عليه. للعودة إلى الفهرس، يمكن الضغط هنا.
تثبيت الخادم سهل وبسيط جدا وممكن من خلال عدد من الطرق أهمها التثبيت من مستودع البرمجيات مباشرة، أو التثبيت من الكود المصدري للبرنامج.
التثبيت من الكود المصدري مهم في حال أردنا إضافة مميزات إضافية غير مدعومة في البرنامج مثل الاتصال عبر شبكات HTTP/3. في هذا الشرح سوف نلتزم بالتثبيت من خلال مستودعات البرامج لأنها الأسهل على الرغم من أنها توفر نسخة قديمة نسبية من البرنامج.
تثبيت Nginx
تحديث النظام
قبل البدء في التثبيت، يجب إنشاء خادم جديد يعمل بنظام Debian 12. بعد ذلك، يتوجب القيام بعمل تحديث للمستودعات من خلال الأمر التالي:
apt update
ومن ثم تحديث البرامج التي قد تحتاج تحديثات
apt upgrade
عند الإنتهاء من تحديث البرامج يمكن المتابعة. لاحظ، في حال تم تحديث نواة النظام، يُفضّل أن نُعيد تشغيل الخادم قبل المتابعة.
تثبيت Nginx
يمكن تثبيت Nginx على Debian بسهولة من خلال الأمر التالي:
apt install nginx
عند الإنتهاء، نقوم بتشغيل وتفعيل التشغيل التلقائي للبرنامج
systemctl enable --now nginx
ثم نتأكد من أنه يعمل بشكل صحيح
systemctl status nginx
النتيجة يجب أن تكون مشابهه للتالي:
إعدادات Nginx الأوّلية
في الحقيقة ليس هناك ما يجب فعله. هذه أمور اضافية أنا افضل القيام بها لا أكثر.
بشكل افتراضي، عند طلب عنوان IP الخادم، يقوم Nginx بعرض صفحة افتراضية مشابهة للتالي:
حتى نحظر هذا التصرف، يمكن تحرير الملف التالي بمحرر النصوص المفضل لدينا. هنا نستخدم vi
vi /etc/nginx/sites-enabled/default
نحذف محتويات الملف بالكامل وبدلا منه نضع التالي:
server {
listen 80;
listen 443;
server_name "";
return 444;
}
نلاحظ أن الرد الإفتراضي هنا هو 444 معناه أنه لا يوجد رد. يمكن تغيير الرد لما تشاء. مثلا 200 ومعناه أن الرد كان صحيح، أو 403 ومعناه أن الوصول للصفحة محظور.
بالإضافة لما سبق، يمكن أيضا تحرير الصفحة الإفتراضية للخادم من خلال تحرير الملف التالي ووضع أي محتوى بدلا منه:
/usr/share/nginx/html/index.html
تثبيت عنوان الخادم
أحد الأمور التي أُفضّل القيام بها هي ضبط النطاق الأساسي للخادم. من ناحيتي قمت بإختيار الاسم التالي ومن ثم وجّهت عنوان IP الخاص به إلى الخادم:
linuxarabia-nginx.linuxarabia.co
بما أن هذا النطاق هو الإفتراضي، لا مانع من استخدام نفس ملف الإعدادات لضبطه. للقيام بذلك، نقوم بتحرير ملف الإعدادات:
vi /etc/nginx/sites-enabled/default
ومن ثم وضع الكود التالي في نهايته:
server {
listen 80;
server_name linuxarabia-nginx.linuxarabia.co;
root /usr/share/nginx/html;
index index.html;
}
عند الإنتهاء، نحفظ الملف ومن ثم نفحص الإعدادات من خلال الأمر التالي:
nginx -t
النتيجة يجب أن تكون كالتالي:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
عند الإنتهاء، نقوم بإعادة تشغيل Nginx:
systemctl restart nginx
والآن نفحص الإعدادت من خلال دخول رابط الخادم:
http://linuxarabia-nginx.linuxarabia.co/
والنتيجة هي كالتالي:
إلى هنا نكون أنهينا تثبيت خادم Nginx. التثبيت كان سهل، بسيط ومباشر جدا وليس فيه أي تعقيدات. الخطوة التالية هي تثبيت تثبيت قواعد البيانات على خادم Debian.