我在自定义Heroku域上收到错误400:错误请求,但在foo.herokuapp.com上工作正常

时间:2014-04-23 18:45:53

标签: python django http heroku

我刚刚将一个Django项目推到了Heroku。它在http://rtd-staging.herokuapp.com/rtd2015/下工作正常,但出于某种原因,我收到了400错误:当我使用以下网址访问时出现错误请求:http://staging.researchthroughdesign.org/rtd2015/

我知道CNAME设置正确,因为在推送到heroku的过程中它说Heroku应用程序崩溃了,所以它肯定指向正确的应用程序。

以下是错误的日志:

2014-04-23T18:32:29.981976+00:00 heroku[router]: at=info method=GET path=/ host=staging.researchthroughdesign.org request_id=b8fe3ac9-e062-493b-b3bf-862c60e4001b fwd="82.34.146.252" dyno=web.1 connect=1ms service=7ms status=400 bytes=226

3 个答案:

答案 0 :(得分:25)

您必须将您的网站域设置为允许的主机。将其放在settings.py

ALLOWED_HOSTS = [".herokuapp.com", ".researchthroughdesign.org"]

答案 1 :(得分:4)

heroku config:set DJANGO_ALLOWED_HOSTS=.example.com,example.herokuapp.com

答案 2 :(得分:0)

已经回答了,但是我只是想添加一下,如果您在更改git remote之后立即在Heroku上更改了应用程序名称,还请确保执行@Leo回答的操作,因为我也在努力查看它为什么显示在浏览器上响应400,直到我发现此问题。