uwsgi 的 ImportError: No module n

2018-09-28  本文已影响394人  fanzhh

在做的项目使用Django REST做后端,发现使用python3 manage.py runserver时能够正常启动,使用uwsgi时报错:

Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'

经查,原因是我用的python版本为3.5,用virtualenv创建虚拟目录时,默认版本为2.7。解决方法是生成虚拟目录时指定python的版本。

rm -rf .env                          # 删除生成的虚拟目录 
virtualenv -p /usr/bin/python3 .env/ # 重新创建虚拟目录,指定使用python3
source .env/bin/activate             # 激活虚拟环境
pip install -r requirements.txt      # 安装包

然后 nohup uwsgi -H /home/user/projects/.env/ --ini myuwsgi.ini & ,问题解决。

上一篇 下一篇

猜你喜欢

热点阅读