uwsgi는 콘솔에서 시작하고 작동하지만 구성 파일을 사용하고 싶지 않습니다.

uwsgi는 콘솔에서 시작하고 작동하지만 구성 파일을 사용하고 싶지 않습니다.

uwsgi에 문제가 있습니다. 콘솔에서 uwsgi를 시작하면:

 uwsgi --socket 127.0.0.1:5555  --chdir /var/www/proj/smth/ --wsgi-file /var/www/.../rest_api/wsgi.py &

웹페이지가 표시되고 모든 것이 괜찮아 보입니다. 하지만 uwsgi 구성 파일을 다음과 같이 사용할 때:

[uwsgi]
chdir = /var/www/proj
socket = :5555
wsgi-file = /var/www/proj/rest/rest_api/wsgi.py 
home = /var/www/proj
processes = 4
threads = 2
touch-reload=/var/www/proj/rest/rest_api/wsgi.py
daemonize=/var/log/uwsgi/rest.log
vacuum=true
; wtf we get errors w-out this and it won't start: 
no-site=true

웹 브라우저에 내부 서버 오류가 표시됩니다. 나는 nginx를 실행합니다.

내 uwsgi 로그 줄 중 일부는 다음과 같습니다.

ImportError: No module named ...
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***
--- no python application found, check your startup logs for errors ---

답변1

설정

chdir = /var/www/proj

명령줄에서 실행할 때 동일하게 보이지 않습니다.

--chdir /var/www/proj/smth/ 

맞습니까 아니면 그냥 붙여넣은 것을 편집했기 때문입니까?

답변2

해결책을 찾았습니다. uwsgi.ini에서 일부 줄을 삭제하고 다음 줄만 남겼습니다.

chdir = /var/www/proj/rest/
socket = 127.0.0.1:xxxx
wsgi-file = /var/www/proj/rest/rest_api/wsgi.py 
daemonize=/var/log/uwsgi/rest.log

이제 작동합니다.

관련 정보