البرمجة
Nginx للمطورين
12 ديسمبر 202511 دقائق قراءة
تعلم إعداد Nginx كـ web server و reverse proxy.
ما هو Nginx؟
Nginx web server سريع وخفيف. يُستخدم لتقديم الملفات الثابتة، reverse proxy، وload balancing.
التثبيت
# Ubuntu
sudo apt update
sudo apt install nginx
sudo systemctl start nginx
إعداد موقع
# /etc/nginx/sites-available/mysite
server {
listen 80;
server_name example.com;
root /var/www/mysite;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
Reverse Proxy
server {
listen 80;
server_name api.example.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
}
}
SSL مع Let's Encrypt
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com
Load Balancing
upstream backend {
server 127.0.0.1:3001;
server 127.0.0.1:3002;
server 127.0.0.1:3003;
}
server {
location / {
proxy_pass http://backend;
}
}
الخلاصة
Nginx ضروري لـ production. reverse proxy مع SSL إعداد شائع ومهم.
الوسوم
#Nginx#Web Server#Reverse Proxy#DevOps#Deployment