У меня есть фронт на React и бэк на Django + drf. У меня на компе все работает, все запросы проходят, но когда заливаю все на хост (бэк и фронт в разных контейнерах, nginx вне докера) начинается проблема: на любой из эндпоинтов django, с любого хоста (будь то запрос через curl внутри контейнера или из фронта или просто через Postman) я получаю 400 Bad Request. Почитал что может быть проблема в ALLOWED_HOSTS, поставил * - не помогло. Больше информации по этой проблеме я не находил. В чем может быть проблема?
Мои файлы и конфиги:
settings.py
ALLOWED_HOSTS = "*"
CORS_ALLOWED_ORIGINS = [
'https://example.com',
'https://www.example.com',
]
CSRF_TRUSTED_ORIGINS = [
'https://example.com',
'https://www.example.com',
]
sites-available/example.com
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
http2 on;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/www.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.example.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /admin {
proxy_pass http://0.0.0.0:8000/admin;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /api {
proxy_pass http://0.0.0.0:8000/api;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
запуск gunicorn в Dockerfile
CMD ["gunicorn", "--bind", "0.0.0.0:8000", "--timeout", "600", "config.wsgi:application", "--log-level", "debug"]
все порты открыты, на 80 только контейнеры.