처음으로 여기에서 Heroku를 사용합니다. 파이썬 Flask 응용 프로그램을 호스팅하고 싶습니다. 어떻게 일을 시작하는 종류. 나는 heroku local
명령을 사용하여 로컬로 내 응용 프로그램을 테스트하고 싶습니다,하지만 난이 오류를 얻을 :Heroku python 앱을 로컬에서 테스트하는 방법? ImportError : wsgi 모듈이 없습니다.
Procfile :
web: gunicorn choposcope.wsgi --log-file -
myapp.wsgi 여기
내 파일입니다을 :ImportError: No module named wsgi
from choposcope import app as application
오류 스택 추적 :
[2016-12-01 18:36:21 +0100] [9916] [INFO] Starting gunicorn 19.6.0
6:36:21 PM web.1 | [2016-12-01 18:36:21 +0100] [9916] [INFO] Listening at: http://0.0.0.0:5000 (9916)
6:36:21 PM web.1 | [2016-12-01 18:36:21 +0100] [9916] [INFO] Using worker: sync
6:36:21 PM web.1 | [2016-12-01 18:36:21 +0100] [9919] [INFO] Booting worker with pid: 9919
6:36:34 PM web.1 | [2016-12-01 18:36:34 +0100] [9919] [ERROR] Exception in worker process
6:36:34 PM web.1 | Traceback (most recent call last):
6:36:34 PM web.1 | File "/Users/Yann/Documents/dev/choposcope/env/lib/python2.7/site-packages/gunicorn/arbiter.py", line 557, in spawn_worker
6:36:34 PM web.1 | worker.init_process()
6:36:34 PM web.1 | File "/Users/Yann/Documents/dev/choposcope/env/lib/python2.7/site-packages/gunicorn/workers/base.py", line 126, in init_process
6:36:34 PM web.1 | self.load_wsgi()
6:36:34 PM web.1 | File "/Users/Yann/Documents/dev/choposcope/env/lib/python2.7/site-packages/gunicorn/workers/base.py", line 136, in load_wsgi
6:36:34 PM web.1 | self.wsgi = self.app.wsgi()
6:36:34 PM web.1 | File "/Users/Yann/Documents/dev/choposcope/env/lib/python2.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
6:36:34 PM web.1 | self.callable = self.load()
6:36:34 PM web.1 | File "/Users/Yann/Documents/dev/choposcope/env/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 65, in load
6:36:34 PM web.1 | return self.load_wsgiapp()
6:36:34 PM web.1 | File "/Users/Yann/Documents/dev/choposcope/env/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load_wsgiapp
6:36:34 PM web.1 | return util.import_app(self.app_uri)
6:36:34 PM web.1 | File "/Users/Yann/Documents/dev/choposcope/env/lib/python2.7/site-packages/gunicorn/util.py", line 357, in import_app
6:36:34 PM web.1 | __import__(module)
6:36:34 PM web.1 | ImportError: No module named wsgi
6:36:34 PM web.1 | [2016-12-01 18:36:34 +0100] [9919] [INFO] Worker exiting (pid: 9919)
6:36:34 PM web.1 | [2016-12-01 18:36:34 +0100] [9916] [INFO] Shutting down: Master
6:36:34 PM web.1 | [2016-12-01 18:36:34 +0100] [9916] [INFO] Reason: Worker failed to boot.
[DONE] Killing all processes with signal null
6:36:34 PM web.1 Exited with exit code 3
또한 wsgi 모듈이 기본적으로 플라스크에 설치되어야하는지 여부는 알 수 없습니다. 내 가상 환경에서 pip install mod_wsgi
을 실행하려고 할 때,이 오류 얻을 : 당신은 그것을 다운로드 할 필요가 없습니다
pip install mod_wsgi
Collecting mod_wsgi
Using cached mod_wsgi-4.5.9.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/_1/bhy3l2kj5l36_859j956y87m0000gn/T/pip-build-h3zlPa/mod-wsgi/setup.py", line 284, in <module>
APR_INCLUDES = get_apr_includes().split()
File "/private/var/folders/_1/bhy3l2kj5l36_859j956y87m0000gn/T/pip-build-h3zlPa/mod-wsgi/setup.py", line 245, in get_apr_includes
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1335, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/_1/bhy3l2kj5l36_859j956y87m0000gn/T/pip-build-h3zlPa/mod-wsgi/
어떻게 heroku를 설치 했습니까? – daphtdazz
Apache가 무엇이 필요하다고 생각하는지 확실하지 않습니다. Heroku는 그것을 전혀 사용하지 않으며 개발에 반드시 필요한 것은 아닙니다. 그러나 당신은 우리가 질문에 대답하기에 충분한 * 정보를 거의주지 못했습니다. 프로젝트 구조는 어떻게 생겼습니까? virtualenv에 있습니까? 어떤 라이브러리를 설치 했습니까? 귀하의 procfile에 무엇이 있습니까? 그리고 가장 중요한 것은, * full * 에러 추적 표시가 무엇을 말합니까? –
요청한 세부 정보를 추가했습니다. 모든 것이 같은 폴더에 있습니다. – ypicard