我是django-1.6的新手。当我用DEBUG = True运行django服务器时,它运行得很好。但是当我在设置文件中将DEBUG更改为False时,服务器停止了,并且在命令提示符上给出了以下错误:
CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False.
在我将ALLOWED_HOSTS更改为["http://127.0.0.1:8000",]后,在浏览器中我得到了错误:
Bad Request (400)
可以在没有调试模式的情况下运行Django吗?
在项目的settings.py中,检查第28行,其中是允许主机
settings.py
ALLOWED_HOSTS = ['IP', 'servidor', ]
你必须把IP和你使用的服务器,本地或web级别
settings.py
ALLOWED_HOSTS = ['127.0.0.1', 'localhost', 'www.ejemplo.com']
or
ALLOWED_HOSTS = ['*']
我也有同样的问题,但没有一个答案能解决我的问题。为了解决这种情况,最好通过在settings.py中临时添加以下配置来启用日志记录。
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': '/tmp/debug.log',
},
},
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
},
}
当您发现问题时,处理起来比盲目调试要容易得多。
我的问题是:
无效的HTTP_HOST头:'pt_web:8000'。根据RFC 1034/1035,提供的域名无效。
我通过添加proxy_set_header主机$ Host来解决它;在settings.py中启用USE_X_FORWARDED_PORT = True的端口转发(这是因为在我的情况下,我在Nginx端口8080上监听请求,并在端口8000上传递给guni)。
对于我来说,我已经在127.0.0.1上安装了xampp,在127.0.1.1上安装了django
我一直在尝试添加主机
ALLOWED_HOSTS = ['127.0.0.1', 'localhost', 'www.yourdomain.com', '*', '127.0.1.1']
我得到了相同的错误或(400)坏请求
所以我把url改为127.0.1.1:(使用的端口)/项目
瞧!
你必须检查你的虚拟网络地址是什么,对我来说,因为我在Linux上使用bitnami django stack 2.2.3-1,我可以检查django正在使用的端口。
如果你有一个错误(400坏请求),那么我猜django在不同的虚拟网络..
祝你好运