【发布时间】:2015-01-12 22:42:33
【问题描述】:
我正在尝试使用 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
网站停止响应。
【问题讨论】:
-
它正在使用 python3.4(参见异常位置)。问题在于您的编码,而不是 python 版本
-
不,它只是从那里获取额外的库。并使用了 Python 2.7。 (对不起,我从错误屏幕中跳过了这一行)