你怎么告诉django使用哪个python版本?

时间:2013-12-27 15:24:39

标签: python django apache wsgi

centos上的python的默认版本是2.6,我在我的django应用程序中使用了一个需要2.7的功能。我在哪里指定使用哪个版本?

2.7的python路径位于/usr/local/bin/python2.7

我使用的网络服务器是apache。我尝试了一些不同的东西,但没有太多运气。有任何想法吗?

1 个答案:

答案 0 :(得分:3)

如果您使用virtualenv(提示:您应该),您可以在创建环境时指定python版本:

virtualenv --python=python2.7 <your_venv_name>

对于mod_wsgi,请查看apache模块目录。我没有使用centos的经验,但是在Debian上,在/usr/lib/apache2/modules中,你可以通过修改mod_wsgi.so符号链接来选择python版本(这是在debian oldstable上):

lrwxrwxrwx 1 root root     15 Feb 10  2011 mod_wsgi.so -> mod_wsgi.so-2.5
-rw-r--r-- 1 root root 151648 Sep 26  2010 mod_wsgi.so-2.5
-rw-r--r-- 1 root root 151680 Sep 26  2010 mod_wsgi.so-2.6

(供参考:对于python3,你需要安装一个单独的包,libapache2-mod-wsgi-py3

我认为centos有类似的东西。如果没有,则需要找到针对python 2.7构建的mod_wsgi包,或者从源代码中针对正确的python版本重建mod_wsgi