首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用UWSGI_SCRIPT在nginx上动态地向uwsgi进程添加pylons应用程序?

如何使用UWSGI_SCRIPT在nginx上动态地向uwsgi进程添加pylons应用程序?
EN

Stack Overflow用户
提问于 2010-08-14 07:39:27
回答 1查看 1.2K关注 0票数 1

我已经成功地在nginx + uwsgi上部署了一个单独的pylons应用程序,使用:

代码语言:javascript
运行
复制
uwsgi --paste config:/var/www/sites/helloworld/development.ini --socket :3031 -H /var/www/virtualenv

然而,我使用nginx来虚拟主机3站点。

基于this tutorial和unbit上的uwsgi主站点的uwsgi/wiki/DynamicApps页面,我可以动态地将应用程序添加到uwsgi,而不必为3个独立的端口上的3个主进程创建3个独立的uwsgi init.d脚本。

我的nginx虚拟主机配置的设置与本教程中的设置相同,但我的UWSGI_SCRIPT值有问题。我将其设置为app.wsgi (位于/var/www/site/helloworld/app.wsgi)。脚本代码为:

代码语言:javascript
运行
复制
from paste.deploy import loadapp
wsgi_app = loadapp('config:/var/www/sites/helloworld/development.ini')

但是我找不到任何关于这个脚本的直接信息。它是应该被命名为app_wsgi.py,还是完全不同的代码?它应该放在哪里呢?当我访问站点时,我得到:“wsgi Error -wsgi application not found",然后我在我的uwsgi.log中看到了以下内容:

代码语言:javascript
运行
复制
interpreter for app 0 initialized.
ImportError: No module named app.wsgi
[pid: 7287|app: -1|req: -1/24] XXX.XXX.XXX.133 () {48 vars in 782 bytes} [Fri Aug 13 18:41:22 2010] GET /page/view/0 => generated 46 bytes in 8 msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 async switches on async core 0)
EN

回答 1

Stack Overflow用户

发布于 2011-01-29 12:19:12

它对我的影响是这样的:

代码语言:javascript
运行
复制
location / {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:5000;
        uwsgi_param UWSGI_PYHOME /home/don/dev/envs/pylons; #this is my virtualenv
        uwsgi_param UWSGI_CHDIR /home/don/dev/envs/pylons/apps/helloworld; #so app.py can be found
        uwsgi_param UWSGI_SCRIPT app; # app.py: where i put loadapp code
        uwsgi_param SCRIPT_NAME ""; # this line is needed, don't know what it means
}

然后用--vhost --no-site启动uwsgi,如果你用主进程和辅助进程启动uwsgi,记得在你的development.ini中将debug设置为false,除了将你的应用程序名从wsgi_app重命名为应用程序之外,这也是uwsgi要寻找的

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3481306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档