Tillbaka till bloggen
Maj 23, 2026Guider

Hur man ställer in Nginx reverse proxy

Proxy Node.js, Docker eller andra appar via Nginx med WebSocket och SSL på VPS.

Hur man ställer in Nginx reverse proxy

En reverse proxy låter Nginx ta emot publik HTTP/HTTPS-trafik och vidarebefordra till backend-appar (Node.js på port 3000, Docker-containrar). Standard för produktion på Hiddence VPS.

Förutsättningar

  • Nginx installerat och igång
  • Backend lyssnar på localhost (t.ex. 127.0.0.1:3000)
  • Domän pekar till VPS (för SSL)
  • Port 80 och 443 öppna i brandväggen

Grundläggande reverse proxy-konfiguration

Skapa site config för din domän:

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-stöd

Krävs för Socket.io, dashboards och realtidsappar:

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 med Certbot

Efter fungerande HTTP, gratis certifikat:

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

Tips

  • proxy_buffering off för streaming/SSE vid behov
  • client_max_body_size för filuppladdningar
  • Flera backends på olika subdomäner
  • upstream-block för load balancing
  • Kontrollera error.log vid 502 Bad Gateway