diff --git a/deploy/nginx/aircard-ios.org.conf b/deploy/nginx/aircard-ios.org.conf index 6526f47..515b076 100644 --- a/deploy/nginx/aircard-ios.org.conf +++ b/deploy/nginx/aircard-ios.org.conf @@ -49,6 +49,15 @@ server { return 404; } + # Die Community-API (aircard-api) liegt ebenfalls nur über Traefik auf /api. Fehlt der Dienst (Container weg, damit + # auch sein Traefik-Router), darf /api/* nie die App ausliefern: der Client bekäme HTML mit 200 statt eines Fehlers. + # Stattdessen 503 mit JSON-Text, den die Seite wie eine API-Antwort anzeigt. Gleiche Reihenfolge-Regel wie bei /v1. + # (Kein add_header: sonst entfallen die Sicherheits-Header des server-Blocks; default_type setzt den Content-Type.) + location ~ ^/api(/|$) { + default_type application/json; + return 503 '{"error":"Der Dienst ist gerade nicht erreichbar."}'; + } + location = /index.html { expires -1; }