# nginx vhost for buildmymcpserver.com — install on the host nginx: # scp this to /etc/nginx/sites-available/buildmymcpserver # ln -s /etc/nginx/sites-available/buildmymcpserver /etc/nginx/sites-enabled/ # nginx -t && systemctl reload nginx # # TLS is terminated by Cloudflare (proxied DNS records). The origin serves # plain HTTP on :80 — same pattern as the other Cloudflare-fronted apps here. # Set the Cloudflare SSL/TLS mode to "Full" for this zone. # --- Web app: buildmymcpserver.com --- server { listen 80; listen [::]:80; server_name buildmymcpserver.com www.buildmymcpserver.com; client_max_body_size 12M; location / { proxy_pass http://127.0.0.1:4001; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; 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_cache_bypass $http_upgrade; proxy_read_timeout 120s; } } # --- Control plane API: api.buildmymcpserver.com --- server { listen 80; listen [::]:80; server_name api.buildmymcpserver.com; client_max_body_size 12M; # Build-log WebSocket stream (/v1/builds/:id/stream) — needs the upgrade # headers and a long read timeout; buffering off so frames are not held. location /v1/builds/ { proxy_pass http://127.0.0.1:4000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; 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_buffering off; proxy_cache off; proxy_read_timeout 600s; } location / { proxy_pass http://127.0.0.1:4000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; 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_cache_bypass $http_upgrade; proxy_read_timeout 120s; } }