我总是设置我的 ALLOWED_HOSTS
来自 Django 中的环境变量。在我的发展中 .env
我总是设置ALLOWED_HOSTS=.localhost,.127.0.0.1
并在生产 ALLOWED_HOSTS=mydomain.dom,my_ip_address
现在我正在熟悉 Docker,问题是 ALLOWED_HOSTS
的值是什么?在生产中。它是否应该保留为 localhost,因为我知道 localhost 将引用主机容器,或者我应该将其设置为我的域。我正在使用 Nginx 进行反向代理来转发请求。
最佳答案
您应该将其设置为您的域。 ALLOWED_HOSTS
用于判断请求是否来自正确的域名。
如果你看 the docs for ALLOWED_HOSTS ,您会看到它与请求的 Host
进行了比较 header ,由访问您网站的人的用户代理设置。
因此,尽管 Docker 容器服务于它自己的本地主机,但请求来自 example.com
退房 this part of the docs确切了解为什么需要验证主机 header ,您可能会更好地理解 ALLOWED_HOSTS
的目的。
关于django - 使用 Docker 时如何在生产中设置 ALLOWED_HOSTS Django 设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57920619/