Terug naar blog
Mei 23, 2026Handleidingen

Nginx reverse proxy instellen

Node.js, Docker en andere apps via Nginx met WebSocket en SSL.

Nginx reverse proxy instellen

Een reverse proxy laat Nginx openbaar HTTP/HTTPS-verkeer ontvangen en doorsturen naar apps op localhost (bijv. Node.js op poort 3000 of een Docker-container). Standaard in productie op een Hiddence VPS.

Vereisten

  • Nginx geïnstalleerd en actief
  • App luistert op localhost (bijv. 127.0.0.1:3000)
  • Domein wijst naar uw VPS (voor SSL)
  • Poorten 80 en 443 open in firewall

Basisconfiguratie

Maak een siteconfig voor uw domein:

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-ondersteuning

Nodig voor Socket.io, dashboards en realtime-apps:

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

Na werkend HTTP een gratis certificaat uitgeven:

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

  • Zet proxy_buffering off voor streaming indien nodig
  • Verhoog client_max_body_size voor grote uploads
  • Meerdere apps op verschillende subdomeinen
  • Meerdere backends via upstream en load balancing
  • 502-fout — controleer /var/log/nginx/error.log