Блогқа оралу
Мамыр 23, 2026Нұсқаулықтар

Nginx кері проксиді қалай орнатуға болады

Proxy Node.js, Docker немесе VPS жүйесінде WebSocket қолдауы және SSL бар Nginx арқылы басқа қолданбалар.

Nginx кері проксиді қалай орнатуға болады

Кері прокси Nginx-ке жалпы HTTP/HTTPS трафигін қабылдауға және оны серверлік қолданбаларға жіберуге мүмкіндік береді (3000 портындағы Node.js, Docker контейнерлері, Python API интерфейстері). Hiddence VPS жүйесінде өндірісті орналастыру үшін маңызды.

Алғы шарттар

  • Nginx орнатылған және жұмыс істейді
  • Жергілікті хостта серверлік қолданбаны тыңдау (мысалы, 127.0.0.1:3000)
  • Домен VPS-ке нұсқады (SSL үшін)
  • 80 және 443 порттары брандмауэрде ашылады

Негізгі кері прокси конфигурациясы

Доменіңіз үшін сайт конфигурациясын жасаңыз:

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 nginx

WebSocket қолдауы

Socket.io, көптеген бақылау тақталары және нақты уақыттағы қолданбалар үшін қажет:

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;
}

Certbot көмегімен HTTPS қосыңыз

HTTP жұмыс істегеннен кейін тегін сертификат беріңіз:

bash
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d app.yourdomain.com

# Certbot will update your server block for SSL automatically

Кеңестер

  • Қажет болса, ағындық/SSE үшін proxy_buffering өшірулі пайдаланыңыз
  • Файлды жүктеп салу үшін client_max_body_size мәнін орнатыңыз
  • Әр түрлі қосалқы домендерде бірнеше серверлерді іске қосыңыз
  • Жүктемені теңестіру үшін бірнеше серверлік блоктарды пайдаланыңыз
  • 502 Bad Gateway алсаңыз, error.log тексеріңіз