uWSGI 可以使用 plugins 参数支持使用不同的 Python 版本,默认情况下其搜索路径是当前目录。这也许并不方便。指定一个固定的搜索路径可能是个好选择。
下面我们将其路径指向 /usr/lib/uwsgi:
首先下载 uWSGI 的源码包并解压:
1 2 | wget http://projects.unbit.it/downloads/uwsgi-1.4.10.tar.gztar zxvf uwsgi-1.4.10.tar.gz |
进入到解压出来的文件夹,修改 buildconf/core.ini 文件,修改如下行:
1 2 | plugin_dir = /usr/lib/uwsgibin_name = /usr/bin/uwsgi |
编译 uWSGI:
1 | python uwsgiconfig.py --build core |
编译各 python 版本的 plugins(例如我这里有 2.6 和 2.7 两个版本):
1 2 | python2.6 uwsgiconfig.pu --plugin plugins/python core python26python2.7 uwsgiconfig.py --plugin plugins/python core python27 |
接下来我们就可以选择需要的 plugins 了,其命令参数如下:
1 | --plugin |
参考文档:
<a href="http://projects.unbit.it/uwsgi/wiki/MultiPython" target="_blank">Using multiple version of python with the same uWSGI (>= 0.9.7-dev) server binary