mod-wsgi使用错误版本的python

时间:2014-11-15 17:32:37

标签: django apache mod-wsgi

我正在尝试使用Apache和mod WSGI设置Django站点。 在管理网站上打开一些页面时出现错误

  

'ascii'编解码器不能编码位置0-7中的字符:序数不在   范围(128)

错误屏幕中的更多详细信息:

Django Version:     1.7.1
Exception Type:     UnicodeEncodeError
Exception Value: 'ascii' codec can't encode characters in position 0-7: ordinal not in range(128)
Exception Location:     /var/www/.virtualenvs/tankienv/lib/python3.4/site-packages/django/utils/encoding.py in force_text, line 87
Python Executable:  /usr/bin/python

似乎mod-wsgi使用python 2.7而不是python 3。 我该怎么解决这个问题?

当我尝试将正确的python可执行文件的路径添加到apache2.conf

WSGIPythonHome /var/www/.virtualenvs/myprojectenv/bin

网站停止响应。

1 个答案:

答案 0 :(得分:5)

应安装python3的mod-wsgi版本。

我在Ubuntu 13.04

中运行了这些命令来纠正这个问题
sudo apt-get remove libapache2-mod-wsgi
sudo apt-get install libapache2-mod-wsgi-py3