Setup Guide
Last updated
Last updated
PORT= 2000
PANEL_URL= https://panel.euphoriatheme.uk# Redirect HTTP traffic to HTTPS
server {
if ($host = api.euphoriatheme.uk) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name api.euphoriatheme.uk;
}
# Handle HTTPS traffic
server {
listen 443 ssl;
http2 on;
server_name api.euphoriatheme.uk;
# SSL Configuration
ssl_certificate /etc/letsencrypt/live/api.euphoriatheme.uk/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/api.euphoriatheme.uk/privkey.pem; # managed by Certbot
ssl_protocols TLSv1.2 TLSv1.3; # Support TLS 1.2 and 1.3
ssl_prefer_server_ciphers on;
ssl_ciphers HIGH:!aNULL:!MD5;
# Proxy Configuration
location / {
proxy_pass http://localhost:2000; # Backend server
proxy_http_version 1.1; # Explicitly set to HTTP/1.1
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Connection "keep-alive";
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-Host $server_name;
# Handle preflight requests
if ($request_method = OPTIONS) {
return 204;
}
}
}