尝试使用mod_wsgi运行具有不同Python版本的2个Python应用程序

时间:2016-10-17 12:29:16

标签: python django apache mod-wsgi moinmoin

我的Apache 2应用程序:Django应用程序和MoinMoin应用程序。第一个是使用Python3.4运行,第二个是使用Python2.7运行(MoinMoin)

运行dpkg时:

ruben@babylon:/var/log/apache2$ dpkg -l | grep wsgi
rc  libapache2-mod-wsgi                   3.4-4ubuntu2.1.14.04.2                amd64        Python WSGI adapter module for Apache
ii  libapache2-mod-wsgi-py3               3.4-4ubuntu2.1.14.04.2                amd64        Python 3 WSGI adapter module for Apache

但Apache无法同时运行2个模块。 Django(Python3)正在运行,但MoinMoin(Python2.7)没有。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

正如你所说的那样:

你不能在一个Apache实例中做到这一点。

所描述的简单答案是运行单独的WSGI服务器,例如mod_wsgi-express,或者您也可以使用gunicorn我们的其他东西,并将其设置在主Apache实例后面Apache代理它。

有很多细节可以做到这一点,并且还建议,如果你想用mod_wsgi做这个,你最好在mod_wsgi邮件列表上询问。

如果不想使用mod_wsgi邮件列表,那么您可以在以下位置找到一些信息:

它讨论了代理到在Docker中运行的后端WSGI应用程序,但所有相同的原则都适用于设置前端代理和出现的问题。