Quando eu atualizo o Python de 2.7.9 para 2.7.10 com o anaconda, recebo o seguinte erro no meu log do apache2 e meus sites não funcionam mais.
mod_wsgi (pid=608): Target WSGI script "/www/wsgi_scripts/django_myproject.wsgi" cannot be loaded as Python module.
Exception occurred processing WSGI script "/www/wsgi_scripts/django_myproject.wsgi".
Traceback (most recent call last):
File "/www/wsgi_scripts/django_myproject.wsgi", line 8, in <module>
import django.core.handlers.wsgi
File "/Users/xnx/anaconda/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 6, in <module>
from io import BytesIO
File "/Users/xnx/anaconda/lib/python2.7/io.py", line 51, in <module>
import _io
ImportError: dlopen(/Users/xnx/anaconda/lib/python2.7/lib-dynload/_io.so, 2): Symbol not found: __PyErr_ReplaceException
Referenced from: /Users/xnx/anaconda/lib/python2.7/lib-dynload/_io.so
Expected in: dynamic lookup
Eu espero que isso seja algum tipo de incompatibilidade nas versões da biblioteca de pacotes, mas alguém sabe qual delas?
Respostas:
1 para resposta № 1Verifique novamente o seu PYTHONPATH
se estiver correto (você não o substitui em nenhum dos seus arquivos de inicialização).
Caso contrário, você pode considerar o downgrade de seu Python de 2.7.10 para 2.7.9.
Por exemplo (como sugerido em Aqui):
conda install python=2.7.9
ou quando usando Homebrew experimentar:
brew switch python 2.7.9
como poderia ser algum problema particular com 2.7.10.
Como alternativa, use o Python 3.x em seu lugar.
1 para resposta № 2
Minha suspeita é que isso é um problema com o Anaconda, pois acabei de atingir o mesmo problema. Eu relatei um problema aqui: https://github.com/conda/conda/issues/1367
atualizar:
Os caras da Conda agora lançaram um pacote virtualenv fixo que não tem mais esse problema.