【发布时间】:2015-03-09 03:01:40
【问题描述】:
我已尝试寻找修复方法,但无法解决。对不起,如果这个问题存在于其他地方。
我正在关注http://uwsgi-docs.readthedocs.org/en/latest/tutorials/Django_and_nginx.html,目前正在尝试确保 django 可以与 uWSGI 一起使用。我正在尝试运行uWSGI --http-socket :8000 --module mysite.wsgi,但我得到了:
Traceback (most recent call last):
File "./mysite/wsgi.py", line 13, in <module>
from django.core.wsgi import get_wsgi_application
File "/anaconda/lib/python2.7/site-packages/django/core/wsgi.py", line 2, in <module>
from django.core.handlers.wsgi import WSGIHandler
File "/anaconda/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 3, in <module>
import cgi
File "/anaconda/lib/python2.7/cgi.py", line 50, in <module>
import mimetools
File "/anaconda/lib/python2.7/mimetools.py", line 6, in <module>
import tempfile
File "/anaconda/lib/python2.7/tempfile.py", line 32, in <module>
import io as _io
File "/anaconda/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/anaconda/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyInt_AsInt
Referenced from: /anaconda/lib/python2.7/lib-dynload/_io.so
Expected in: dynamic lookup
我已经遇到了 uWSGI 没有使用正确安装的问题。uwsgi 会尝试使用 /usr/local/bin/uwsgi 尽管
which uwsgi
//anaconda/bin/uwsgi
,产生No such file or directory。目前,我设置uWSGI="//anaconda/bin/uwsgi" 来解决这个问题并让uwsgi 工作,但我怀疑可能会发生类似的问题。我认为它可能正在尝试使用/usr/bin/python 而不是/anaconda/bin/python,并且无法从anaconda 导入,从而导致错误。但是,我不确定如何解决它/确认这是问题所在,任何建议都将不胜感激。
谢谢!
编辑:我也试过import _io 使用安装的所有当前版本的python,没有问题。 brew unlink python 帮助解决了 uwsgi 问题的 anaconda 版本冲突(最初使用别名修复,如上所述),但这个问题仍然存在。
编辑:从 $PATH 中删除 anaconda,然后重新安装/取消链接/链接 django、openssl 和 libxml2 “工作”。我会在稍后的步骤中找出这是否会导致问题,但我仍然不知道 anaconda 安装发生了什么。自从我使用 scipy/numpy/etc 以来,我真的很想弄清楚发生了什么。非常频繁,所以这绝对是一个临时修复。有任何想法吗?
【问题讨论】:
-
您是通过
pip install uwsgi安装uWSGI 来进行Anaconda Python 编译,而不是/usr/bin/python或/usr/loacl/bin/uwsgi? -
我实际上并不确定我要为哪一个安装(我刚刚运行了
pip install uwsgi),尽管我非常确信它是为 Anaconda 安装的,因为一旦安装完成,它就会调用它来自//anaconda/bin/uwsgi。另外pip show uwsgi给我pip show uwsgi --- Name: uWSGI Version: 2.0.9 Location: /anaconda/lib/python2.7/site-packages Requires: -
使用 virtualenv:packaging.python.org/en/latest/…
-
当它尝试使用 anaconda 时,我无法让它与 virtualenv 一起工作。不过,我会更多地研究它。谢谢!