Fix CSRF behind Nginx by configuring trusted origins via environment.
Reads CSRF_TRUSTED_ORIGINS and USE_HTTPS from env so admin login works correctly behind HTTPS reverse proxies. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -93,6 +93,8 @@ DJANGO_SETTINGS_MODULE=faktenkompass.settings
|
||||
DJANGO_DEBUG=False
|
||||
DJANGO_SECRET_KEY=lange-zufaellige-zeichenkette
|
||||
ALLOWED_HOSTS=faktenkompass.example.com,www.faktenkompass.example.com
|
||||
CSRF_TRUSTED_ORIGINS=https://faktenkompass.example.com,https://www.faktenkompass.example.com
|
||||
USE_HTTPS=True
|
||||
|
||||
DB_ENGINE=django.db.backends.postgresql
|
||||
DB_NAME=faktenkompass
|
||||
@@ -104,14 +106,9 @@ DB_PORT=5432
|
||||
OPENAI_API_KEY=sk-...
|
||||
```
|
||||
|
||||
Optional in `faktenkompass/settings.py` für HTTPS hinter Nginx ergänzen:
|
||||
`CSRF_TRUSTED_ORIGINS` muss die **exakte URL** sein, mit der Sie die Seite aufrufen (Schema + Domain, ohne Pfad). Bei HTTP statt HTTPS z. B. `http://192.168.178.10` setzen und `USE_HTTPS=False`.
|
||||
|
||||
```python
|
||||
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
|
||||
CSRF_TRUSTED_ORIGINS = ['https://faktenkompass.example.com']
|
||||
```
|
||||
|
||||
`SECRET_KEY`, `DEBUG` und `ALLOWED_HOSTS` sollten in der Produktion aus Umgebungsvariablen gelesen werden.
|
||||
`USE_HTTPS=True` aktiviert Proxy-Header und sichere Cookies hinter Nginx mit HTTPS.
|
||||
|
||||
### 2. Deployment vorbereiten
|
||||
|
||||
|
||||
Reference in New Issue
Block a user