Django DisallowedHost: “Недопустимый заголовок HTTP_HOST”, несмотря на правильную конфигурацию ALLOWED_HOSTS и nginx

Я запускаю приложение Django 4.2.20 на сервере Ubuntu с Gunicorn и nginx в качестве обратного прокси-сервера. Однако при доступе к веб-сайту через общедоступный IP я получаю следующую ошибку:

Exception Type: DisallowedHost at /
Exception Value: Invalid HTTP_HOST header: '89.168.121.242,89.168.121.242'. The domain name provided is not valid according to RFC 1034/1035.

Я уже проверил следующие: РАЗРЕШЕННЫЕ хосты в settings.py:

ALLOWED_HOSTS = ['ipaddress', 'localhost']

конфигурация nginx (/etc/nginx/доступные сайты/семейное приложение):

server {
    listen 80;
    server_name ipaddress;

    location /static/ {
        alias /home/familyapp/FamilyApp/familyapp/static/;
    }

    location /media/ {
        alias /home/familyapp/FamilyApp/media/;
    }

    location / {
        include proxy_params;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://unix:/home/ubuntu/sockets/gunicorn.sock;
    }
}

проверка синтаксиса и перезапуск nginx

sudo nginx -t # No errors
sudo systemctl restart nginx
sudo systemctl restart gunicorn

Gunicorn запущен вручную

gunicorn --bind unix:/home/ubuntu/s

В конце '89.168.121.222.' есть дополнительная точка (.), которая делает его недействительным, удалите точку.

ALLOWED_HOSTS = ['89.168.121.222', 'localhost']

Исправьте nginx server_name и proxy_set_header.

server {
    listen 80;
    server_name 89.168.121.222;

    location /static/ {
        alias /home/familyapp/FamilyApp/familyapp/static/;
    }

    location /media/ {
        alias /home/familyapp/FamilyApp/media/;
    }

    location / {
        include proxy_params;
        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_pass http://unix:/home/ubuntu/sockets/gunicorn.sock;
    }
}

Вернуться на верх