
uwsgi に問題があります。コンソールから uwsgi を起動すると、次のようになります。
uwsgi --socket 127.0.0.1:5555 --chdir /var/www/proj/smth/ --wsgi-file /var/www/.../rest_api/wsgi.py &
Web ページが表示され、すべて正常に見えます。しかし、次のような 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
Web ブラウザに内部サーバー エラーが表示されます。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
今は動作します。