upstream planetposen-frontend { server planetposen.schleppe:4173; } upstream planetposen-backend { server planetposen.schleppe:30010; } upstream planetposen-images { server planetposen.schleppe:8000; } upstream planetposen-ws { # enable sticky session based on IP ip_hash; server planetposen.schleppe:30010; } server { listen 80; listen [::]:80; server_name planetposen.no planet.schleppe.cloud; more_set_headers Upgrading Connection; return 302 https://$host$request_uri; } server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name planetposen.no; location / { root /opt/planetposen-original/; autoindex off; } ssl_certificate /etc/letsencrypt/live/planetposen.no-0001/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/planetposen.no-0001/privkey.pem; # managed by Certbot } server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name planet.schleppe.cloud; include snippets/proxy-params.conf; location /ws { resolver 10.0.0.72; proxy_pass http://planetposen-ws; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; } location /api/v1/images { resolver 10.0.0.72; proxy_pass http://planetposen-images/api/v1/images; proxy_request_buffering off; more_set_headers 'Access-Control-Allow-Origin planet.schleppe.cloud'; more_set_headers 'Access-Control-Allow-Methods GET, POST, OPTIONS'; more_set_headers 'Access-Control-Allow-Headers Content-Type'; client_max_body_size 5M; } location /api { resolver 10.0.0.72; proxy_pass http://planetposen-backend/api; # more_set_headers 'Access-Control-Allow-Origin' 'planet.schleppe.cloud'; more_set_headers 'Access-Control-Allow-Origin *'; more_set_headers 'Access-Control-Allow-Methods GET, POST, OPTIONS'; more_set_headers 'Access-Control-Allow-Headers Content-Type'; } location / { resolver 10.0.0.72; proxy_pass http://planetposen-frontend; more_set_headers 'Access-Control-Allow-Origin planet.schleppe.cloud'; more_set_headers 'Access-Control-Allow-Methods GET, POST, OPTIONS'; more_set_headers 'Access-Control-Allow-Headers Content-Type'; } ssl_certificate /etc/letsencrypt/live/planet.schleppe.cloud/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/planet.schleppe.cloud/privkey.pem; # managed by Certbot }