Fix: добавлен CSRF_TRUSTED_ORIGINS для входа за Nginx (403)
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -14,3 +14,6 @@ DB_PORT=5432
|
||||
DB_NAME=watersurf_erp
|
||||
DB_USER=watersurf_erp
|
||||
DB_PASSWORD=CHANGE_ME_POSTGRES_PASSWORD
|
||||
|
||||
# Опционально: дополнительные доверенные источники для CSRF (через запятую)
|
||||
# CSRF_TRUSTED_ORIGINS=https://erp.gen7x.ru,https://other.example.com
|
||||
|
||||
10
HISTORY.md
10
HISTORY.md
@@ -1,5 +1,15 @@
|
||||
# История изменений ERP WaterSurf
|
||||
|
||||
## 2025-02-25 15:25 UTC – Исправление 403 CSRF при входе
|
||||
|
||||
**Проблема**: При первой авторизации под администратором по https://erp.gen7x.ru возникала ошибка 403 (ошибка проверки CSRF, запрос отклонён).
|
||||
|
||||
**Решение**: Добавлена настройка `CSRF_TRUSTED_ORIGINS` в `config/settings.py`: указаны `https://erp.gen7x.ru`, а также localhost/127.0.0.1 для локальной отладки. При работе за Nginx Django проверяет заголовок Origin/Referer; без доверенного источника запросы с формы логина отклонялись.
|
||||
|
||||
**Изменения**: `app/config/settings.py` — список CSRF_TRUSTED_ORIGINS; опциональная переменная `CSRF_TRUSTED_ORIGINS` в `.env.example`.
|
||||
|
||||
---
|
||||
|
||||
## 2025-02-25 15:10 UTC – Администратор и SSH для Git
|
||||
|
||||
**Проблема**: Требовалось создать первого администратора системы и настроить SSH для самостоятельного push в Gitea.
|
||||
|
||||
@@ -10,6 +10,15 @@ SECRET_KEY = os.environ.get("SECRET_KEY", "django-insecure-change-me")
|
||||
DEBUG = os.environ.get("DEBUG", "false").lower() in ("1", "true", "yes")
|
||||
ALLOWED_HOSTS = os.environ.get("ALLOWED_HOSTS", "localhost,127.0.0.1").split(",")
|
||||
|
||||
# За прокси (Nginx): иначе при отправке формы логина — 403 CSRF
|
||||
CSRF_TRUSTED_ORIGINS = [
|
||||
"https://erp.gen7x.ru",
|
||||
"http://localhost:8010",
|
||||
"http://127.0.0.1:8010",
|
||||
]
|
||||
if os.environ.get("CSRF_TRUSTED_ORIGINS"):
|
||||
CSRF_TRUSTED_ORIGINS = os.environ.get("CSRF_TRUSTED_ORIGINS").split(",")
|
||||
|
||||
INSTALLED_APPS = [
|
||||
"django.contrib.admin",
|
||||
"django.contrib.auth",
|
||||
|
||||
Reference in New Issue
Block a user