我在程序txsite中使用Django 1.6.5进行以下设置:
DEBUG = True
我将DEBUG设置为False,但是当我时runserver
,出现以下错误:
CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False
我尝试设置,ALLOWED_HOSTS = ['127.0.0.1', 'localhost']
但出现相同的错误。
有人知道如何解决吗?
我在程序txsite中使用Django 1.6.5进行以下设置:
DEBUG = True
我将DEBUG设置为False,但是当我时runserver
,出现以下错误:
CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False
我尝试设置,ALLOWED_HOSTS = ['127.0.0.1', 'localhost']
但出现相同的错误。
有人知道如何解决吗?
Answers:
尝试
ALLOWED_HOSTS = ['*']
如果您没有通过防火墙或不在公共局域网上,则安全性较差,但这是我所使用的并且有效。
编辑:有趣的是,即使在时,我也需要将其添加到我的1.8个项目中DEBUG = True
。非常不确定为什么。
编辑:这是由于我的评论中提到的Django安全更新。
grep ALLOWED_HOSTS . -ri
在你的项目的头文件夹中找到正确的文件。在这种情况下,它是settings.py,但是grepping始终是个好建议。
ALLOWED_HOSTS
了修改,以解决DNS重新绑定攻击,并且今后可能有必要这样做。[1]:docs.djangoproject.com/en/1.10/ref/settings/#allowed-hosts
从文档中:https : //docs.djangoproject.com/en/1.10/ref/settings/
如果DEBUG为False,则还需要正确设置ALLOWED_HOSTS设置。否则,所有请求都将作为“错误请求(400)”返回。
从这里开始:https : //docs.djangoproject.com/en/1.10/ref/settings/#std : setting-ALLOWED_HOSTS
我正在使用这样的东西:
ALLOWED_HOSTS = ['localhost', '127.0.0.1', 'www.mysite.com']
如果你在工作PyCharm
,请检查Environmental variables
你的Django server
。您应该指定正确的module.settings
文件