Nginx Proxy - nbspou/scripts GitHub Wiki

Proxy Template

server {
	listen 443 ssl http2;
	listen [::]:443 ssl http2;

	ssl on;
	ssl_certificate     /etc/letsencrypt/live/example.com/fullchain.pem;
	ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

	server_name example.com;

	location / {
		proxy_pass http://localhost:8080;
		proxy_set_header Host $host;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	}

	location /api/ {
		proxy_pass http://localhost:8090;
		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 Upgrade $http_upgrade;
		proxy_set_header Connection "Upgrade";
	}

	location /auth/ {
		proxy_ignore_client_abort on;
		proxy_set_header Host $http_host;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_pass http://localhost:9200;
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		auth_basic_user_file /etc/nginx/.htpasswd;
	}
}