Gegužė 23, 2026Vadovai
Kaip nustatyti Nginx reverse proxy
Node.js, Docker ir kitos programos per Nginx su WebSocket ir SSL.

Reverse proxy leidžia Nginx priimti viešą HTTP/HTTPS ir perduoti backendui (pvz., Node.js :3000). Standartas produkcijoje Hiddence VPS.
Reikalavimai
- Įdiegtas ir veikiantis Nginx
- Backend klauso localhost (pvz. 127.0.0.1:3000)
- Domenas rodo į VPS (SSL)
- Prievadai 80 ir 443 atidaryti ugniasienėje
Pagrindinė konfigūracija
Sukurkite svetainės konfigūraciją:
bash
server {
listen 80;
server_name app.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
sudo nginx -t && sudo systemctl reload nginxWebSocket palaikymas
Reikalinga Socket.io, panelėms ir realaus laiko programoms:
bash
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}HTTPS su Certbot
Kai HTTP veikia, išduokite sertifikatą:
bash
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d app.yourdomain.com
# Certbot will update your server block for SSL automaticallyPatarimai
- Srautui — proxy_buffering off
- client_max_body_size dideliems įkėlimams
- Keli backendai skirtinguose subdomenuose
- upstream blokai apkrovos balansavimui
- 502 klaida — žiūrėkite /var/log/nginx/error.log