UwsgiでDjangoアプリケーションを実行しようとしていますが、以下のエラーが発生します。
uwsgi --http :8000 --home /home/cuser/.virtualenvs/vq --chdir /var/www/sid/sid -w wsgi.py
uwsgi: option '--http' is ambiguous
getopt_long() error
-httpから--socketに変更すると機能しますが、-homeはあいまいです
これは、ディストリビューションのパッケージ化されたバイナリからuwsgiがインストールされていることが原因である可能性があります。これらのバイナリは、ビルドが最小限であり、プラグインの一部が不足しています。
これは、pip install uwsgi
で修正し、uwsgi
をpath/to/uwsgi/binary/installed/using/pip
に置き換えることができます。 pip show uwsgi
を使用してそれを見つけることができます。
[注意:pip3
]を使用している場合は、python3
を使用してください
別の方法は、それぞれのhttp/python3プラグインをダウンロードして、次のコマンドを実行することです。
uwsgi --plugins http,python --http :8000 --home /home/cuser/.virtualenvs/vq --chdir /var/www/sid/sid -w wsgi.py
ディストリビューションが提供するパッケージでこれを使用する場合は、おそらくディストリビューションがモジュール方式でuWSGIを構築していることを考慮に入れる必要があります(すべての機能は、ロードする必要のある異なるプラグインです)。
コマンドの前に--pluginpython、httpを追加し、HTTPルーターが削除された場合は--plugin python
追加された例--pluginpython
uwsgi --http :8000 --plugin python --home /home/cuser/.virtualenvs/vq --chdir /var/www/sid/sid -w wsgi.py