Bri*_*ead 4 python django dns heroku cookiecutter
我刚刚用Heroku部署了我的Django网站,它在example.herokuapp.com上工作就好了.
我遇到的问题是当我去example.com时,我得到Bad Request(400).我查看了有关400个错误的Django文档,我似乎无法弄清楚什么是错误的.
我正在使用Django 1.9.5并使用cookiecutter-django启动该项目.Name.com是我的域名注册商.
我的设置的production.py:
ALLOWED_HOSTS = env.list('DJANGO_ALLOWED_HOSTS', default=['example.com'])
Run Code Online (Sandbox Code Playgroud)
我不是100%确定我的ALLOWED_HOSTS的DJANGO_ALLOWED_HOSTS部分是如何工作的,但是当我去我的Heroku仪表板并查看设置中的配置变量时,我看到DJANGO_ALLOWED_HOSTS是.herokuapp.com
Heroku自定义域名:
Domain Name DNS Target
*.example.com example.herokuapp.com
example.com example.herokuapp.com
www.example.com example.herokuapp.com
Run Code Online (Sandbox Code Playgroud)
Name.com DNS记录:
Type Host Answer TTL Prio
CNAME www.example.com example.herokuapp.com 300 N/A
CNAME example.com example.herokuapp.com 300 N/A
CNAME *.example.com example.herokuapp.com 300 N/A
Run Code Online (Sandbox Code Playgroud)
在控制台中,我输入我得到的主机命令:
$ host www.example.com
www.example.com is an alias for example.herokuapp.com
$ host example.com
example is an alias for example.herokuapp.com
Run Code Online (Sandbox Code Playgroud)
我可以找到大多数答案/论坛指向这3个地方,以找到错误,ALLOWED_HOSTS,Heroku自定义域和DNS记录.但我无法发现错误.
我发现的一条建议是要检查网站的其他区域.无论我走到哪里都会得到同样的错误,例如example.com/about/
我需要在name.com上设置其他内容吗?
只需使用命令行添加.example.com到ALLOWED_HOSTS设置:
heroku config:set DJANGO_ALLOWED_HOSTS=.example.com,example.herokuapp.com
Run Code Online (Sandbox Code Playgroud)
或使用heroku仪表板.
| 归档时间: |
|
| 查看次数: |
2207 次 |
| 最近记录: |