다음 웹 프로젝트에서 Django를 사용하려고합니다. (생각한대로) 모든 것이 좋게 설치되었지만 최소 (새로운 최소 장고 프로젝트) 사이트를 방문하려고하는데 500 오류가 발생합니다.django에서 가져 오기 오류
내 설정은 apache, mod_wsgi를 사용하며, 개발을 위해 내 Mac을 사용하고 있습니다. 아파치 오류 로그에서 찾고
, 나는 파이썬 mod_wsgi에 사용되는 검사를 두 배로,
ImportError: Could not import settings 'mysite.settings'
(Is it on sys.path? Is there an import error in the settings file?):
No module named mysite.settings
먼저 참조 :
wpa072077:mysite enewe101$ otool -L /usr/local/Cellar/mod_wsgi/3.3/libexec/mod_wsgi.so
/usr/local/Cellar/mod_wsgi/3.3/libexec/mod_wsgi.so:
/Library/Frameworks/Python.framework/Versions/2.7/Python (compatibility version 2.7.0, current version 2.7.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 635.21.0)
좋아, 그래서 내가 그 파이썬을 해고하고 내 사이트를 가져 오십시오 .settings - 내 PYTHONPATH
에 넣기 때문에 문제없이 작동합니다.
흠, 아마도 mod_wsgi가 내 PYTHONPATH
을 얻지 못하고 있습니까? 그래서 나는 내 사이트의 Virtual Host
섹션 안에 내 http.conf
이 추가보십시오 :
SetEnv PYTHONPATH /Users/enewe101/projects/mysite/src
합니다 (내 사이트 모듈은 /Users/enewe101/projects/mysite/src/mysite
에 있고 예상대로 그것은 __init__.py
포함)
마지막으로 한가지 : 나는 두 가지 버전이 내 컴퓨터에 파이썬의. 앞에서 언급했듯이 컴파일 된 mod_wsgi를 확인하고 REPL을 입력하면 해당 항목을 가져올 수 있습니다 mysite.settings
아무런 문제가 없습니다. 그러나, 사실 mod_wsgi가 다른 파이썬을 사용하기를 바랄뿐입니다 - 그러나 같은 버전 (둘 다 2.7).
WSGIPythonHome /Library/Frameworks/EPD64.framework/Versions/7.3
WSGIPythonPath /Library/Frameworks/EPD64.framework/Versions/7.3/lib/python2.7/site-packages:/Library/Python/2.7/site-packages:/Users/enewe101/projects/mysite/src
를하지만 단순히 응답하지 않는 서버의 원인 - 나는 참을성이 얻을 때까지 브라우저가 회전 : I httpd.conf에서 넣어 내 원하는 파이썬을 사용 mod_wsgi에 강제보십시오.
이 가져 오기 오류를 해결하고 올바른 python을 사용하도록 mod_wsgi를 얻는 방법은 무엇입니까?
관련 :
http://stackoverflow.com/a/23248187/2428955 어쩌면 wsgi를 참조하십시오.py에는 프로젝트에 대한 명시 적 경로가 필요합니다. – Ambroise
@Ambroise 감사합니다. 물론, 그게 효과가 있지만, 내가 원하는 모든 모듈에 대한 경로를 명시 적으로 추가해야한다는 것을 의미합니다. 이것은 기계 별 설정을 wsgi.py에 추가하는 것으로, 필요하지 않아야합니다. –