diff --git a/.htaccess b/.htaccess
deleted file mode 100644
index 0c6ad6a..0000000
--- a/.htaccess
+++ /dev/null
@@ -1,5 +0,0 @@
-
- RewriteEngine on
- RewriteRule ^$ web/ [L]
- RewriteRule (.*) web/$1 [L]
-
diff --git a/README.md b/README.md
index d2e67b1..df410d9 100644
--- a/README.md
+++ b/README.md
@@ -28,6 +28,12 @@ Der Fokus liegt auf klarer Rollen-/Rechtestruktur, Tenant-Scope und einer konsis
- Dompdf (PDF Rendering)
- endroid/qr-code (QR-Code Rendering)
+## Webserver-Policy
+
+- Docker-Betrieb ist Nginx-only (Dev + Prod).
+- Apache-/`.htaccess`-Regeln werden nicht ausgewertet und sind kein Teil des Laufzeit-Contracts.
+- Routing und Front-Controller-Verhalten werden ausschliesslich in `/docker/nginx/default.conf` und `/docker/nginx/prod.conf` gepflegt.
+
## Schnellstart (Docker)
1. Umgebungsdatei anlegen
diff --git a/bin/qa-required.sh b/bin/qa-required.sh
index f983dba..b411aeb 100755
--- a/bin/qa-required.sh
+++ b/bin/qa-required.sh
@@ -41,6 +41,9 @@ run_step "QG-008 Docs link integrity" \
run_step "QG-008 Docs drift contract" \
bin/docs-drift-check.sh
+run_step "Nginx-only .htaccess guard" \
+ bash -lc 'matches="$(rg --files -g ".htaccess" || true)"; if [[ -n "${matches}" ]]; then echo "[FAIL] .htaccess files are not allowed in Nginx-only setup"; echo "${matches}"; exit 1; fi'
+
run_step "CSS contract check" \
bin/css-contract-check.sh
diff --git a/docs/explanation-docker-betrieb.md b/docs/explanation-docker-betrieb.md
index 8264284..dff20e5 100644
--- a/docs/explanation-docker-betrieb.md
+++ b/docs/explanation-docker-betrieb.md
@@ -16,4 +16,5 @@ Die Docker-Dokumentation ist in zwei klare Pfade getrennt:
- Für tägliche Entwicklung immer mit `docker-compose.yml` arbeiten.
- Für Serverbetrieb ausschließlich `docker-compose.prod.yml` verwenden.
- Änderungen an Domain/TLS nur in der Produktivdoku und den Produktivdateien pflegen.
+- Webserver-Contract ist Nginx-only; `.htaccess` wird im Docker-Betrieb nicht berücksichtigt.
- Nach Start oder Deployment einmal `docker compose exec php php bin/console doctor` ausführen.
diff --git a/docs/howto-docker-lokal.md b/docs/howto-docker-lokal.md
index 54d5882..640ecce 100644
--- a/docs/howto-docker-lokal.md
+++ b/docs/howto-docker-lokal.md
@@ -10,6 +10,7 @@ Diese Anleitung bringt die Anwendung lokal schnell und stabil zum Laufen.
- Docker Desktop (oder Docker Engine + Compose)
- Port `8080` (App) und `8081` (phpMyAdmin) sind frei
+- Nginx-only Setup: `.htaccess` wird nicht ausgewertet
## Start in 5 Schritten
diff --git a/docs/howto-docker-produktiv.md b/docs/howto-docker-produktiv.md
index fea5c76..3b5db60 100644
--- a/docs/howto-docker-produktiv.md
+++ b/docs/howto-docker-produktiv.md
@@ -11,6 +11,7 @@ Diese Anleitung beschreibt den Betrieb mit Domain auf Basis von `/docker-compose
- DNS zeigt auf den Server (`A/AAAA`)
- Ports `80` und `443` sind offen
- TLS-Zertifikate vorhanden
+- Nginx-only Setup: `.htaccess` wird nicht ausgewertet
## Produktionsdateien
diff --git a/web/.htaccess b/web/.htaccess
deleted file mode 100644
index 6f3a18a..0000000
--- a/web/.htaccess
+++ /dev/null
@@ -1,9 +0,0 @@
-php_flag display_startup_errors on
-php_flag display_errors on
-
-
- RewriteEngine On
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteRule ^(.*)$ index.php [QSA,L]
-