我打算用web.py做一些工作,我不知道如何处理两个应用程序 使用uwsgi进行部署。以下是我的工作。
我的目录树,两个最简单的应用程序:
├── index
│ └─── index.py
└── index2
└─ index2.py
和我原来的uwsgi.ini:
[uwsgi]
plugin = python27
http = :8080
master = true
module = index
当只处理一个应用程序时,我可以在'index'目录中使用cp uwsig.ini,并且 运行“uwsgi ./uwsgi.ini”,所以我可以访问端口8080上的应用程序,但如果有 两个或更多应用程序,任何示例?
index.py和index2.py几乎相同。
index.py:
# -*- coding: UTF-8 -*-
import web
urls = (
'/index', 'Index',
)
class Index:
def GET(self):
return 'index'
app = web.application(urls, globals())
application = app.wsgifunc()
index2.py:
# -*- coding: UTF-8 -*-
import web
urls = (
'/index2', 'Index',
)
class Index:
def GET(self):
return 'index2'
app = web.application(urls, globals())
application = app.wsgifunc()
thx!
答案 0 :(得分:0)
为了这个目的,我建议使用webpy的子应用程序。
看看这里:http://webpy.org/cookbook/subapp
您的另一个选择是配置反向代理(nginx),方法是让几个uwsgi进程侦听不同的套接字并让nginx管理请求的位置。在nginx conf中有这样的东西:
location /index {
uwsgi_pass unix:/path/to/uwsgi1.sock;
include uwsgi_params;
}
location /index2 {
uwsgi_pass unix:/path/to/uwsgi2.sock;
include uwsgi_params;
}