Gunicorn - 无法访问Django项目(浏览器超时)

时间:2015-11-18 18:01:29

标签: python django nginx gunicorn

使用AWS和Gunicorn,如果我启动Django的内置服务器,我的Django站点可以访问并且功能齐全,但我无法通过Gunicorn访问它。

如果我尝试:

gunicorn MyApp.wsgi

似乎开始了:

[2015-11-18 17:53:30 +0000] [18752] [INFO] Starting gunicorn 19.3.0
[2015-11-18 17:53:30 +0000] [18752] [INFO] Listening at: http://0.0.0.0:8001 (18752)
[2015-11-18 17:53:30 +0000] [18752] [INFO] Using worker: sync
[2015-11-18 17:53:30 +0000] [18755] [INFO] Booting worker with pid: 18755

但浏览器只返回基本网址/ IP地址的Nginx启动页面,并在尝试访问<url>:8001<ip_address>:8001时超时。

如果我跑的话,我会得到相同的结果:

gunicorn MyApp.wsgi:application --bind 0.0.0.0:8001

编辑:如果我使用特定网址代替0.0.0.0尝试相同的命令,则会输出以下内容:

[2015-11-18 18:24:17 +0000] [18902] [INFO] Starting gunicorn 19.3.0
[2015-11-18 18:24:17 +0000] [18902] [ERROR] Retrying in 1 second.
[2015-11-18 18:24:18 +0000] [18902] [ERROR] Retrying in 1 second.
[2015-11-18 18:24:19 +0000] [18902] [ERROR] Retrying in 1 second.
[2015-11-18 18:24:20 +0000] [18902] [ERROR] Retrying in 1 second.
[2015-11-18 18:24:21 +0000] [18902] [ERROR] Retrying in 1 second.
[2015-11-18 18:24:22 +0000] [18902] [ERROR] Can't connect to ('myurl.xyz', 8001)

如果我使用服务器的IP地址,我会看到:

[2015-11-18 18:26:22 +0000] [18911] [INFO] Starting gunicorn 19.3.0
[2015-11-18 18:26:22 +0000] [18911] [ERROR] Invalid address: ('<my_ip>', 8001)

我花了3天试图让uWSGI工作失败,而且我在第2天和Gunicorn一起工作,我似乎无法超越这一点。没有文档或教程指定如果第一步不起作用该怎么做。我对此非常陌生,也许有一些简单的东西我忽略了其他人只是假设会被照顾的?

在Django的设置模块的ALLOWED_HOSTS部分中正确设置了所有相关的IP地址和网址。

1 个答案:

答案 0 :(得分:1)

正如Daniel Roseman所示,亚马逊似乎不允许我在没有其他配置的情况下做我想做的事情。

我接受了建议并配置了Nginx,现在我可以使用

gunicorn MyApp.wsgi:application --bind=172.31.21.65:8000

把它旋转起来。