# nginx-Reverse-Proxy-vhosts für ASSESSOR. # # In den bestehenden Proxy einfügen (z. B. /etc/nginx/conf.d/assessor.conf oder # ein sites-available-Symlink), die ssl_certificate-Pfade an das Zertifikat # anpassen, das assessor.soc-ops.de bereits terminiert, dann: # nginx -t && systemctl reload nginx # # WICHTIG: proxy_set_header Host $host ist zwingend. ASSESSOR lehnt jeden # Schreibzugriff ab (403 cross_origin_rejected), wenn der weitergeleitete Host # nicht zum Browser-Origin passt. Den Host-Header nicht fest setzen oder entfernen. # ---- Produktion: Branch main -> 127.0.0.1:4173 ---- server { listen 443 ssl; server_name assessor.soc-ops.de; ssl_certificate /etc/ssl/assessor/assessor.crt; # an vorhandenes Zertifikat anpassen ssl_certificate_key /etc/ssl/assessor/assessor.key; # an vorhandenen Schlüssel anpassen # Uploads akzeptieren Dateien bis 100 MiB (≈140 MiB base64); Reserve lassen. client_max_body_size 200m; location / { proxy_pass http://127.0.0.1:4173; 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_read_timeout 300s; } } # ---- Staging: Branch experimental -> 127.0.0.1:4174 ---- server { listen 443 ssl; server_name staging.assessor.soc-ops.de; ssl_certificate /etc/ssl/assessor/assessor.crt; # SAN- oder Wildcard-Zertifikat, das staging.* abdeckt ssl_certificate_key /etc/ssl/assessor/assessor.key; client_max_body_size 200m; location / { proxy_pass http://127.0.0.1:4174; 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_read_timeout 300s; } } # Optional: einfaches HTTP auf HTTPS umleiten für beide Hosts. server { listen 80; server_name assessor.soc-ops.de staging.assessor.soc-ops.de; return 301 https://$host$request_uri; }