web-dev-qa-db-ja.com

エラー「無効なコマンド 'PythonHandler'」が表示されるのはなぜですか?

Djangoアプリケーションをデプロイしようとしていますが、壁にぶち当たりました。Debian(最新)では、これまでに次のコマンドを実行しています。

apt-get install Apache2 Apache2-doc Apache2-mpm-prefork Apache2-utils libexpat1 ssl-cert libapache2-mod-python python-Django

Apache 2の設定ファイルに手動でモジュールを追加しようとしましたが、正直なところ、私は完全に道に迷っています。何年も前に使用したApacheバージョン1とはまったく異なります。

Syntax error on line 7 of /etc/Apache2/sites-enabled/000-default:
Invalid command 'PythonHandler', perhaps misspelled or defined by a module not included in the server configuration

以下をsites-available/defaultファイルのタグの間に追加しました。

    <Location "/">
              SetHandler python-program
              PythonHandler Django.core.handlers.modpython
              SetEnv Django_SETTINGS_MODULE hellodjango1.settings
              PythonDebug Off
    </Location>

以下は、私がこれまでに使用したチュートリアルで、あまりうまくいきませんでした:

8
Nick Bolton

奇妙なことに、手動でpython.loadファイルを作成しなければならなかったようです。とにかく、次の2つのコマンドで修正しました。

echo "LoadModule python_module /usr/lib/Apache2/modules/mod_python.so" > /etc/Apache2/mods-available/python.load
ln -s ../mods-available/python.load etc/Apache2/mods-enabled/python.load
0
Nick Bolton

それを行うためのより簡単な方法

a2enmod python

5
llazzaro

Mods-enabledでmod_python.loadを有効にしましたか?これを行うには、mods-availableで同じファイルへのソフトリンクを作成します。

5
txwikinger

Ubuntuでは、次のことを行う必要があります。

apt-get install libapache2-mod-python
3
Chris McAfee

Gentooを使用している場合は、-D PYTHON /etc/conf.d/Apache2に定義します

0
Jose