无法在浏览器

时间:2016-03-25 17:05:12

标签: python nginx browser wsgi gunicorn

我已经阅读了一些关于如何使用gunicorn和nginx部署Python wsgi应用程序的教程。我已按照步骤操作,应用程序似乎正在运行,但当我尝试在浏览器中访问相关端口时,浏览器只会永远加载并且永远不会解析为任何内容。

我使用的是Ubuntu 14.04,Python 2.7和gunicorn 19.1。我大部分时间都在使用本教程:https://www.digitalocean.com/community/tutorials/how-to-deploy-python-wsgi-apps-using-gunicorn-http-server-behind-nginx

有关于如何设置最基本的wsgi应用程序作为概念证明的说明。基本上,您将此代码放入名为" wsgi.py"

的文件中
def application(env, start_response):
    start_response('200 OK', [('Content-Type', 'text/html')])
    return ["Hello!"]

所以我做到了。然后,从包含wsgi.py文件的目录中,我运行:" $ gunicorn wsgi --bind 0.0.0.0:8080 --log-file = - "

流程开始,似乎运行良好。应该是它,对吗?但是当我去http://[my-IP-address]:8080时,浏览器就会永远停滞不前。

关于我做错的任何想法?起初我想也许我不得不用nginx配置一些东西,但现在我不认为nginx需要参与才能证明我可以运行这个wsgi应用程序。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

感谢Daniel和Cory的建议,但我明白了。这是因为我不熟悉nginx配置文件的语法。有一条线阻止来自一系列端口的所有流量,其中包括我的应用运行的端口。

当有人建议我尝试使用curl(我总是忘记)而不是使用浏览器来访问URL时,取得了突破。当我从服务于应用程序的同一台机器上执行此操作时,它运行正常,因为配置确实允许从localhost到该端口的流量。我从中得到的结论是:不要忘记卷曲!