Files
LehrerApp/ai-backend/.htaccess
T
admin 7c7fe6dfcb KI-Backend: Authorization-Header-Fix + TODO-Ergänzungen (4.5.11-4.5.14)
Login funktionierte, aber jede authentifizierte Folgeanfrage (Guthaben, KI-Anfrage)
meldete fälschlich eine abgelaufene Anmeldung — viele Apache/PHP-FPM-Hosting-Setups
reichen den Authorization-Header standardmäßig nicht an PHP durch. .htaccess erzwingt
jetzt die Weiterleitung, db.php liest zusätzlich REDIRECT_HTTP_AUTHORIZATION/
getallheaders() als Fallback. AiBackendUrl auf die echte deployte Domain gesetzt.

TODO.md: KI-Unterstützung auch für Stundenplanung (4.5.11), Frage zu einem
console.claude.ai-Agent für Standardkontext vs. app-internem Standard-Prompt
(4.5.12/4.5.13), sowie ein Planungsdiff für KI-Vorschläge auf Feldebene statt
grober Neu/Geändert-Markierung (4.5.14).
2026-08-16 02:09:07 +02:00

28 lines
1.0 KiB
ApacheConf

# Sperrt alles, was kein öffentlicher Endpunkt ist. Nur login.php / status.php / plan.php sollen
# von außen aufrufbar sein. Siehe README.md — noch robuster ist es, config.php/db.php/schema.sql/
# providers/ komplett außerhalb des Webroots abzulegen, falls das Hosting das erlaubt.
<FilesMatch "^(config(\.example)?\.php|db\.php)$">
Require all denied
</FilesMatch>
<Files "schema.sql">
Require all denied
</Files>
<FilesMatch "\.md$">
Require all denied
</FilesMatch>
RewriteEngine On
RewriteRule ^providers/ - [F,L]
RewriteRule ^scripts/ - [F,L]
# Viele Apache/PHP-FPM-Setups reichen den Authorization-Header standardmäßig NICHT an PHP durch
# (login.php funktioniert dann, aber jede Anfrage mit Bearer-Token danach schlägt fehl, weil der
# Header bei PHP leer ankommt). Diese Zeile erzwingt die Weiterleitung — zusammen mit dem
# Mehrquellen-Fallback in db.php (ai_backend_authorization_header) deckt das die gängigen
# Hosting-Varianten ab.
RewriteCond %{HTTP:Authorization} ^(.+)$
RewriteRule .* - [E=HTTP_AUTHORIZATION:%1]