【发布时间】:2018-09-24 11:28:49
【问题描述】:
我正在测试将我的 Django 应用程序部署到 AWS 的 Fargate 服务中。
一切似乎都在运行,但由于 Application Load Balancer 正在使用主机的本地 IP 向我的 Django 应用程序发送请求,因此我收到了运行状况检查错误。这会在日志中给我一个 Allowed Host 错误。
HTTP_HOST 标头无效:“172.31.86.159:8000”。您可能需要将“172.31.86.159”添加到 ALLOWED_HOSTS
我尝试在任务启动时获取本地 ip 并将其附加到我的 ALLOWED_HOSTS,但在 Fargate 下失败:
import requests
EC2_PRIVATE_IP = None
try:
EC2_PRIVATE_IP = requests.get('http://169.254.169.254/latest/meta-data/local-ipv4', timeout = 0.01).text
except requests.exceptions.RequestException:
pass
if EC2_PRIVATE_IP:
ALLOWED_HOSTS.append(EC2_PRIVATE_IP)
有没有办法获取 ENI IP 地址,以便我可以将其附加到 ALLOWED_HOSTS?
【问题讨论】:
标签: django amazon-web-services aws-fargate