uWSGI 可以使用 plugins 参数支持使用不同的 Python 版本,默认情况下其搜索路径是当前目录。这也许并不方便。指定一个固定的搜索路径可能是个好选择。
下面我们将其路径指向 /usr/lib/uwsgi:
首先下载 uWSGI 的源码包并解压:
1 2 | wget http: //projects .unbit.it /downloads/uwsgi-1 .4.10. tar .gz tar zxvf uwsgi-1.4.10. tar .gz |
进入到解压出来的文件夹,修改 buildconf/core.ini 文件,修改如下行:
1 2 | plugin_dir = /usr/lib/uwsgi bin_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 python26 python2.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