Я управляю большим сайтом хобби на AWS ELB. Я пытался решить эту проблему с помощью поиска StackOverflow, но ничего не работает. Я обновил мои settings.py и ALLOWED_HOSTS следующим образом:
ALLOWED_HOSTS = ['127.0.0.1','.amazonaws.com','mysite.com','.elasticbeanstalk.com','localhost',]
import requests
EC2_PRIVATE_IP = None
try:
EC2_PRIVATE_IP = requests.get("http://169.254.169.254/latest/meta-data/local-ipv4", timeout = 0.50).text
except requests.exceptions.RequestException:
pass
if EC2_PRIVATE_IP:
ALLOWED_HOSTS.append(EC2_PRIVATE_IP)
Проверка работоспособности ELB работает.
Тем не менее, я по-прежнему получаю тысячи сообщений об ошибках ежедневно. Например:
Неверный заголовок HTTP_HOST: '54 .84.163.167 '. Возможно, вам потребуется добавить '54 .84.163.167 'в ALLOWED_HOSTS.
Отчет на /
Неверный заголовок HTTP_HOST: «54 .84.163.167». Возможно, вам потребуется добавить '54 .84.163.167 'в ALLOWED_HOSTS.
Архитектура моего сайта - Cloudfront, ELB, Django. Из того, что я могу сказать, показанный IP-адрес (и он регулярно меняется) является частью сети Amazons. Я подозреваю, что это сам балансировщик нагрузки, но я не знаю, как это подтвердить и определить IP-адрес балансировщика нагрузки для добавления к разрешенным хостам.
Есть еще мысли или идеи?