6

私のシステム(ubuntu)にはpython 2.6.5バージョンがあります(/usr/bin/にグローバルにインストールされています)。
私は python 2.7.3 を使いたいです。
このため、この回答を使用して virtualenv を作成してみましたIs it possible to install another version of Python to Virtualenv? (回答からのsimlinkingは行いませんでした)。私はこれに成功し、envをアクティブにして「python manage.py shell」を使用すると、うまく機能しました。

問題は: サーバーの実行に uwsgi を使用しています。これまで、システム全体の python(2.6.5) を直接使用しています。すべてをvirtualenvに新しくインストールしたので、オプションを追加しました

'-H /path/to/virtualenv' 

uwsgi サーバーの実行中。

行 "import os" の実行中に "'os' という名前のモジュールがありません" というエラーが発生しました。(エラーログからエラーを発見)

そこで、import sys; を追加しました。コマンド 'import os' の前に sys.path コマンドを出力します。次に、パスを出力すると、次のようになりました。

 /home/name/venv/bin/python/lib/python2.6/  #(one of the items in the array sys.path)

しかし、自分の venv フォルダーを見ると、「lib」フォルダーに python2.6 のようなものはありません。,venv の lib フォルダーには 'python2.7' しか含まれていません。

私の要件は、uwsgi は 2.6 (グローバル) ではなく python 2.7(of venv) を使用する必要があることです。

また、私のshファイルでは、グローバルバージョンを使用していることを示すコマンド「which python」を使用しました。したがって、デフォルトのグローバル環境ではなく、virtualenv から python を使用するようにシェル ファイルに最初に指示する必要があります。「source /path/to/activate」を試しましたが、コマンドが見つからないと言われました。

4

1 に答える 1

10
  1. virtualenvをアクティブにし、
  2. uwsgiをインストールしますpip install uwsgi
  3. virtualenvからuwsgiを実行します。
于 2012-11-19T09:42:09.240 に答える