Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“Django DisallowedHost at/Invalid HTTP_HOST header:”的Heroku上出现错误,即使在将url添加到ALLOWED_HOST之后也是如此_Django_Heroku_Django Rest Framework_Django Deployment_Heroku Ci - Fatal编程技术网

“Django DisallowedHost at/Invalid HTTP_HOST header:”的Heroku上出现错误,即使在将url添加到ALLOWED_HOST之后也是如此

“Django DisallowedHost at/Invalid HTTP_HOST header:”的Heroku上出现错误,即使在将url添加到ALLOWED_HOST之后也是如此,django,heroku,django-rest-framework,django-deployment,heroku-ci,Django,Heroku,Django Rest Framework,Django Deployment,Heroku Ci,所以我试图将我的django项目部署到heroko,我得到了这个 我知道这里有什么问题,所以我在django项目的settings.py文件中将url the-yogify.herokuapp.com添加到允许的_主机中 允许的_主机=['http://the-yogify.herokuapp.com/', 'https://the-yogify.herokuapp.com/', “yogify.herokuapp.com”, “yogify.herokuapp.com/”, '127.0.0.

所以我试图将我的django项目部署到heroko,我得到了这个

我知道这里有什么问题,所以我在django项目的settings.py文件中将url the-yogify.herokuapp.com添加到允许的_主机中

允许的_主机=['http://the-yogify.herokuapp.com/', 'https://the-yogify.herokuapp.com/', “yogify.herokuapp.com”, “yogify.herokuapp.com/”, '127.0.0.1'] 但错误仍然存在

我做错了什么?我想实际的错误可能是别的

所以我打印了heroku日志,它也显示了相同的错误

2020-11-24T04:10:53.978271+00:00 app[web.1]: [2020-11-24 04:10:53 +0000] [4] [INFO] Starting gunicorn 20.0.4
2020-11-24T04:10:53.979367+00:00 app[web.1]: [2020-11-24 04:10:53 +0000] [4] [INFO] Listening at: http://0.0.0.0:25352 (4)
2020-11-24T04:10:53.979552+00:00 app[web.1]: [2020-11-24 04:10:53 +0000] [4] [INFO] Using worker: sync
2020-11-24T04:10:53.991703+00:00 app[web.1]: [2020-11-24 04:10:53 +0000] [10] [INFO] Booting worker with pid: 10
2020-11-24T04:10:54.026534+00:00 app[web.1]: [2020-11-24 04:10:54 +0000] [11] [INFO] Booting worker with pid: 11
2020-11-24T04:10:54.200285+00:00 heroku[web.1]: State changed from starting to up
2020-11-24T04:10:57.847722+00:00 app[web.1]: Invalid HTTP_HOST header: 'the-yogify.herokuapp.com'. You may need to add 'the-yogify.herokuapp.com' to ALLOWED_HOSTS.
2020-11-24T04:10:58.083555+00:00 app[web.1]: Bad Request: /
2020-11-24T04:10:58.092696+00:00 app[web.1]: 10.11.198.97 - - [24/Nov/2020:04:10:58 +0000] "GET / HTTP/1.1" 400 59515 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36 Edg/86.0.622.51"
2020-11-24T04:10:58.099353+00:00 heroku[router]: at=info method=GET path="/" host=the-yogify.herokuapp.com request_id=dafb2e9e-fd1c-49d7-8375-fb0b707ef5bc fwd="42.111.13.118" dyno=web.1 connect=1ms service=2796ms status=400 bytes=59767 protocol=https
2020-11-24T04:10:59.830985+00:00 app[web.1]: Invalid HTTP_HOST header: 'the-yogify.herokuapp.com'. You may need to add 'the-yogify.herokuapp.com' to ALLOWED_HOSTS.
谢谢您的时间。

试试这个:

在设置中添加*允许的\u主机

ALLOWED_HOSTS = [
   '*',
   'http://the-yogify.herokuapp.com/',
   'https://the-yogify.herokuapp.com/',
   'the-yogify.herokuapp.com',
   'the-yogify.herokuapp.com/',
   '127.0.0.1',
]
它将告诉django为所有主机提供服务。

尝试以下方法:

在设置中添加*允许的\u主机

ALLOWED_HOSTS = [
   '*',
   'http://the-yogify.herokuapp.com/',
   'https://the-yogify.herokuapp.com/',
   'the-yogify.herokuapp.com',
   'the-yogify.herokuapp.com/',
   '127.0.0.1',
]

它将告诉django为所有主机提供服务。

有关更多故障排除,您可以查看它是否使用heroku本地命令运行:

heroku local
我们希望在这里遇到这个不允许的主机错误。现在将“0.0.0.0”添加到允许的\u主机:

设置.py

如果这是可行的,那么它可能很简单,因为您没有将更改推送到heroku服务器

git add -A
git commit -m "Changed ALLOWED_HOSTS in settings.py"
git push heroku master

有关更多故障排除,您可以查看它是否使用heroku本地命令运行:

heroku local
我们希望在这里遇到这个不允许的主机错误。现在将“0.0.0.0”添加到允许的\u主机:

设置.py

如果这是可行的,那么它可能很简单,因为您没有将更改推送到heroku服务器

git add -A
git commit -m "Changed ALLOWED_HOSTS in settings.py"
git push heroku master

事实上,这是我的错

我发现在我的django项目中有2个settings.py文件。一个在项目根目录中,另一个在/中。 我一直在对root setting.py进行所有更改。 我仍然完全不知道如何以及何时创建另一个setting.py文件。 最后,正如错误消息所暗示的,我解决了这个问题,一切都很好


感谢大家的回应。

事实上,这是我的错

我发现在我的django项目中有2个settings.py文件。一个在项目根目录中,另一个在/中。 我一直在对root setting.py进行所有更改。 我仍然完全不知道如何以及何时创建另一个setting.py文件。 最后,正如错误消息所暗示的,我解决了这个问题,一切都很好


感谢大家的回答。

令人惊讶的是,它显示了同样的错误。甚至连一个字母都没有改变因此,我开始意识到,即使错误消息是关于允许的主机,但实际问题还是在其他地方。出于安全目的,即使该解决方案可行,也不建议使用此解决方案。好的,听着,删除您在allowed_HOST中添加的其余主机,只保留*。试试看,这太奇怪了。。。我知道。令人惊讶的是,它显示出同样的准确错误。甚至连一个字母都没有改变因此,我开始意识到,即使错误消息是关于允许的主机,但实际问题还是在其他地方。出于安全目的,即使该解决方案可行,也不建议使用此解决方案。好的,听着,删除您在allowed_HOST中添加的其余主机,只保留*。试试看,这太奇怪了。。。我知道。非常感谢你的建议,问题是我在窗口。。。所以heroku local不会运行,因为我使用的是gunicorn,而gunicorn现在使用的fcntl不支持windows。非常感谢您的建议,问题是我在windows上。。。所以heroku local不会运行,因为我使用的是gunicorn,而gunicorn现在使用的是fcntl,它不支持windows。