将django app上传到digitalocean服务器:502 bad gateway nginx / 1.4.6(Ubuntu)

时间:2017-01-20 13:44:09

标签: python django ubuntu nginx

我正在使用以下tutorial将django webapp上传到数字海洋服务器。输入以下命令时,一切似乎都很好:

pip install --upgrade django
service gunicorn restart

根据教程,我现在应该可以在浏览器中刷新主机IP后看到我的网页(没有引导主题/字体)。相反,我收到以下错误:

enter image description here

我在/var/log/nginx/error.log中查找了nginx error.log,并说明了以下内容:

2017/01/20 08:18:23 [error] 9342#0: *38 recv() failed (104: 
Connection reset by peer) while reading response header from 
upstream, client: 92.111.75.86, server: _, request: "GET / HTTP/1.1", 
upstream: "http://127.0.0.1:9000/", host: "104.236.68.12"

问题:如何修复此502错误网关,以便我的网站正常运行?我已经尝试将ALLOWED_HOSTS = ['104.236.68.12']添加到settings.py中,我也尝试使用ubuntu 16.04创建一个Droplet。

3 个答案:

答案 0 :(得分:0)

您应该将您的DigitalOcean Droplet的IP地址添加到Django设置中的 ALLOWED_HOSTS 变量。从你的nginx日志开始,我会设置:

ALLOWED_HOSTS = ['104.236.68.12']

P.S:考虑采用Docker来部署你的django app

答案 1 :(得分:0)

我很抱歉。这解决了这个问题......

将我的django应用程序拖到filezilla中

home/django/django_project

而不是:

home/django/django_project/django_project

阅读教程时基本上不够精确,很抱歉!

答案 2 :(得分:0)

美好的一天: 在settings.py中完全在 ALLOWED_HOSTS = ['*']

这将使它收集所有的ips。