LLevelUp
0
← Back to topic

Nginx Reverse Proxy

Nginx often sits on ports 80 and 443, then serves files or forwards requests to an app running on localhost.

server {
  listen 80;
  server_name example.com;

  location / {
    proxy_pass http://127.0.0.1:3000;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}

Always test before reload:

sudo nginx -t
sudo systemctl reload nginx

Further Learning

  • “Nginx reverse proxy proxy_pass” — proxy basics
  • “Nginx serve static files” — static deployment
  • “X-Forwarded-For X-Forwarded-Proto” — proxy headers