1

我已经尝试过这个教程http://adrian.org.ar/python/django-nginx-green-unicorn-in-an-ubuntu-11-10-ec2-instance用 ngnix 和 gunicorn 设置 django。我已经安装了 django和 gunicorn 在 vi​​rtualenv 环境中。一切都已完美安装,甚至每个命令都有效。当我gunicorn_django -b 0.0.0.0:8000进入我的 django 应用程序文件夹后尝试此命令时,它会启动 gunicorn 并在 shell 上显示以下内容:

2012-05-22 13:22:38 [3146] [INFO] Starting gunicorn 0.14.3
2012-05-22 13:22:38 [3146] [INFO] Listening at: http://0.0.0.0:8000 (3146)
2012-05-22 13:22:38 [3146] [INFO] Using worker: sync
2012-05-22 13:22:38 [3149] [INFO] Booting worker with pid: 3149

但是,如果我通过浏览器转到我的亚马逊 DNS http://ec2-XX-XX-XXX-XXX.compute-1.amazonaws.com:8000/,我什么也没有,并且浏览器只是显示“找不到/连接”消息。但是如果我http://ec2-XX-XX-XXX-XXX.compute-1.amazonaws.com通过浏览器转到它会显示 Ngnix 欢迎页面。我不知道为什么 gunicorn 没有返回我的 Django 欢迎页面我转到http://ec2-XX-XX-XXX-XXX.compute-1.amazonaws.com:8000。我什至看不到任何 GET 请求登录到 gunicorn worker 的 shell。我尝试使用 gunicorn_django 命令更改端口,但没有运气并且得到相同的结果 gunicorn 不提供任何页面。

请注意我正在使用 django-nonrel。

4

1 回答 1

6

看起来您需要配置控制对 EC2 实例的访问的安全组。

你应该以这样的方式结束:

https://skitch.com/ikis/8h1tc/aws-management-console

在我的示例中,22、80 和8000向世界开放。

于 2012-05-25T07:44:20.450 回答