(关于SO的其他帖子也类似,但都没有uwsgi + Flask + virtualenv的特定组合)(这是最近的)
我通过apt-get安装了uwsgi。我还尝试了pip install wsgi。两者都给了我同样的问题。
测试命令:
sudo uwsgi -s /tmp/uwsgi.sock -w myapp:app -H myvirtualenv
结果:
Python version: 2.7.4 (default, Apr 19, 2013, 18:35:44) [GCC 4.7.3] Set PythonHome to myvirtualenv ImportError: No module named site
否则,我可以在虚拟环境中运行我的应用程序。
如果确定只想消除该错误而不是真正解决根本问题,则应将其添加–no-site到命令或no-site=trueuwsgi.ini文件中。
no-site
no-site=trueuwsgi.ini
虚拟环境的路径错误。这就是造成此错误的原因。
我正在使用virtualenvwrapper,并且我的虚拟环境设置为〜/ .virtualenvs。所以在我的情况下,uwsgi调用看起来像
sudo uwsgi -s /tmp/uwsgi.sock -w myapp:app -H ~/.virtualenvs/myapp