Files
remnawave-minishop/deploy/examples/nginx/nginx.conf.template
T

64 lines
1.7 KiB
Plaintext

upstream remnawave_backend_webhooks {
server backend:8080;
keepalive 16;
}
upstream remnawave_frontend {
server frontend:80;
keepalive 16;
}
server {
listen 80;
server_name ${WEBHOOK_HOST} ${MINIAPP_HOST};
return 301 https://$host$request_uri;
}
# WEBHOOK_BASE_URL: Telegram, payment providers and Remnawave webhooks.
server {
listen 443 ssl;
http2 on;
server_name ${WEBHOOK_HOST};
ssl_certificate /etc/nginx/ssl/${WEBHOOK_HOST}/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/${WEBHOOK_HOST}/privkey.pem;
client_max_body_size 20m;
location / {
proxy_pass http://remnawave_backend_webhooks;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
# Required for payment provider IP allowlists in webhook handlers.
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
# SUBSCRIPTION_MINI_APP_URL: static Mini App frontend.
# The frontend container proxies /api, /auth and theme/logo assets to backend:8081.
server {
listen 443 ssl;
http2 on;
server_name ${MINIAPP_HOST};
ssl_certificate /etc/nginx/ssl/${MINIAPP_HOST}/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/${MINIAPP_HOST}/privkey.pem;
client_max_body_size 20m;
location / {
proxy_pass http://remnawave_frontend;
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-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}