Nginx reverse proxy

Very high level notes on using nginx as reverse proxy

Content for /etc/nginx/sites-enabled/example.com

server {
    server_name example.com;

    location /.well-known {
        root /var/www/ssl/example.com/;
    }

    location / {
        proxy_pass http://address:port;
        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;
        proxy_redirect http:// $scheme://; # for subsonic
    }

    location ~ /\. {
        deny all;
    }
}

location /.well-known part is for certbot which uses this for verification.

Create link to enable site

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com

Reload nginx

sudo systemctl reload nginx

Leave a Reply

  • Your email address will not be published.
  • Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: