Nginx + uWSGI + Debian + Daemon

4

首先,这只是我遵循过的一些教程:

projects.unbit.it/uwsgi/wiki/Doc
projects.unbit.it/uwsgi/wiki/Install
projects.unbit.it/uwsgi/wiki/RunOnNginx
projects.unbit.it/uwsgi/wiki/Quickstart

实际上,这个应该很简单,因为它只是初步的步骤...对吧? http://library.linode.com/web-servers/nginx/python-uwsgi/debian-6-squeeze 但是,不对...=[
现在,我能够在命令行上运行uwsgi,并实现一个简单的hello world。
uwsgi -s 127.0.0.1:9001 --wsgi-file /home/www/test/application/wsgi_configuration_module.py

这有点让人愉悦,也有点让人沮丧。我喜欢的是:它可以工作,但它不是一个守护进程,所以它是这样运行的: http://i.imgur.com/MUSM4.jpg。 问题在于:我不能做任何其他事情,它要求我手动启动它,它只能运行那个简单的 hello world 脚本... 而当我设置一个快速的 nginx + php-fpm 时,我可以轻松地将其运行在像 /tmp/php.sock 这样的套接字上,并且我可以轻松地使 nginx 将 php url 发送到该套接字,因此 php-fpm 处理所有我的 php 需求...
我想做什么:
1.自动启动uwsgi
2.使其与nginx配合使用
3.使nginx通过uwsgi正确地发送Python脚本
4.运行使用flask的uwsgi?(在完成其他任务之后)
有人可以帮我吗?我相当熟练,但需要几次尝试才能学好某些东西,我已经掌握了nginx,也已经很好地掌握了php-fpm,但我一直无法使python正常工作... 我有多个虚拟机,完全安装错误并需要重新开始,如果有人想尝试,请随便使用... 谢谢任何帮助/链接/提示等。

1
好的,我了解到Python不像PHP,我必须将我的uwsgi指向一个框架(在我的情况下是Flask,我喜欢它),然后让它去完成工作...但这只是很小的一部分...仍然需要上面提到的帮助,感谢您的帮助,对于帖子格式的问题我很抱歉,我不能链接URL等。 - user1654164
1个回答

2
您可以考虑使用http://supervisord.org/来管理您的进程。至于提供应用程序的服务,我只熟悉通过Python调用WSGI服务器的安排方式。Flask文档会让您使用像gevent这样的工具:
from gevent.wsgi import WSGIServer
from yourapplication import app

http_server = WSGIServer(('', 5000), app)
http_server.serve_forever()

如果您没有使用uWSGI作为应用服务器的特殊原因,我发现这种设置更容易。nginx只需要充当代理即可。如果必须使用uWSGI,Flask文档中有一个关于nginx配置的部分,不过我想您可能已经查看过了。如果没有:http://flask.pocoo.org/docs/deploying/uwsgi/#configuring-nginx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接