فهرس الدليل

دليل شامل

Nginx: من الصفر إلى الاحتراف

21 أغسطس 2026 | ️ 40 دقيقة قراءة

Nginx هو خادم ويب عالي الأداء، يعمل كـ Reverse Proxy، وموازن حمل. يُستخدم من قبل أكبر المواقع في العالم لسرعته واستقراره.

الجزء الأول: مقدمة عن Nginx

يتميز Nginx ببنية غير متزامنة تعتمد على الأحداث.

💡 خلاصة:

  • ✅ Nginx سريع ومستقر.

🚀 الجزء الثاني: التثبيت

sudo apt update
sudo apt install nginx -y
sudo systemctl enable nginx
sudo systemctl start nginx

📂 الجزء الثالث: إعداد المواقع

server {
    listen 80;
    server_name mywebsite.com www.mywebsite.com;
    root /var/www/mywebsite;
    index index.html;

    location / {
        try_files URI_PATH URI_PATH/ =404;
    }
}

🔄 الجزء الرابع: الوكيل العكسي

server {
    listen 80;
    server_name app.mywebsite.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade HTTP_UPGRADE_VAR;
        proxy_set_header Connection upgrade;
        proxy_set_header Host HOST_NAME_VAR;
    }
}

🔒 الجزء الخامس: SSL/HTTPS

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d mywebsite.com -d www.mywebsite.com

🛡️ الجزء السادس: الأمان

server_tokens off;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-XSS-Protection "1; mode=block" always;
client_max_body_size 10M;

⚡ الجزء السابع: الأداء

gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_types text/plain text/css application/json application/javascript text/xml;

⚖️ الجزء الثامن: موازنة الحمل

upstream backend_pool {
    least_conn;
    server 10.0.0.10;
    server 10.0.0.11;
    server 10.0.0.12 backup;
}

server {
    listen 80;
    server_name app.mywebsite.com;
    
    location / {
        proxy_pass http://backend_pool;
    }
}

📊 الجزء التاسع: السجلات

# عرض السجلات مباشرة
tail -f /var/log/nginx/access.log

# عرض آخر 50 خطأ
tail -n 50 /var/log/nginx/error.log

# أكثر عناوين IP زيارة
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head

🔧 الجزء العاشر: استكشاف الأخطاء

# التحقق من صحة الإعدادات
sudo nginx -t

# زيادة حجم الملفات المرفوعة (حل خطأ 413)
client_max_body_size 50M;

# إعادة التشغيل الآمن
sudo systemctl reload nginx

📋 الجزء الحادي عشر: الملخص السريع

جدول مرجعي سريع لأهم الأوامر والتوجيهات:

الأمر / التوجيه الوظيفة
sudo nginx -tالتحقق من صحة الإعدادات
server_nameاسم النطاق (Domain)
rootالمسار الرئيسي للموقع
proxy_passتوجيه الطلبات للخادم الداخلي
gzip on;تفعيل ضغط البيانات

أهم أوامر التحكم بالخدمة:

sudo nginx -t          # التحقق من الإعدادات
sudo systemctl restart nginx # إعادة التشغيل
sudo systemctl reload nginx  # إعادة تحميل التعديلات
nginx -v                   # عرض الإصدار
ls /etc/nginx/sites-enabled/ # عرض المواقع المفعلة

🎉 مبارك!

أصبحت الآن قادراً على إدارة خادم Nginx باحترافية عالية.

تم نسخ الرابط!