Я установил nginx на Ubuntu 18.04.1 LTS с приложением Django One-Click в цифровом океане, у меня есть эта конфигурация
settings.py
# Find out what the IP addresses are at run time
# This is necessary because otherwise Gunicorn will reject the connections
def ip_addresses():
ip_list = []
for interface in netifaces.interfaces():
addrs = netifaces.ifaddresses(interface)
for x in (netifaces.AF_INET, netifaces.AF_INET6):
if x in addrs:
ip_list.append(addrs[x][0]['addr' ])
return ip_list
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
когда я бегу www.enterpise.online
DisallowedHost at /
Invalid HTTP_HOST header: 'enterprise.online'. You may need to add enterprise.online' to ALLOWED_HOSTS.
Я пытаюсь изменить эту строку в settings.py с участием
ip_list.append(addrs[x][0][u'enterpise.online' ])
nginx отправляет сообщение:
502 Bad Gateway
настройка nginx:
/ и т.д. / nginx / сайты-включен /...
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.html index.htm;
client_max_body_size 4G;
server_name _;
keepalive_timeout 5;
# Your Django project's media files - amend as required
location /media {
alias /home/django/django_project/django_project/media;
}
# your Django project's static files - amend as required
location /static {
alias /home/django/django_project/django_project/static;
}
# Proxy the static assests for the Django Admin panel
location /static/admin {
alias /usr/lib/python2.7/dist-packages/django/contrib/admin/static/admin/;
}
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_redirect off;
proxy_buffering off;
proxy_pass http://app_server;
}
}
Мне не ясно, каков следующий шаг для активации www.enterprise.online. При изменении настроек возникает такая же ошибка. другими руками мой DNS настроен нормально
Это проблема с вашими настройками django. Эта ошибка означает, что IP-адрес, который используется для подключения, не отображается в settings.ALLOWED_HOSTS
список. Убедитесь, что ваш settings.py
есть строка, которая выглядит так:
ALLOWED_HOSTS = ip_addresses()