mod_python
ナビゲーションに移動
検索に移動
Mod_python は Python インタプリタをサーバーに組み込む Apache モジュールです。mod_python を使うことで Python のウェブベースアプリケーションを伝統的な CGI よりも高速に動作させることができ、データベース接続の維持や Apache 内部へのアクセス、アクセスを跨いでデータを保存するなど、高度な機能を利用できます。mod_python に関して詳しくは O'Reilly の 記事 を参照してください。
インストール
AUR の mod_pythonAUR パッケージをインストールしてください。
設定
/etc/httpd/conf/httpd.conf
に以下の行を追加:
LoadModule python_module modules/mod_python.so
- Apache を再起動:
# httpd -k restart
- Apache が正しくロードされたことを確認。
Mod_Python のテスト
/etc/httpd/conf/httpd.conf
に以下のブロックを追加:
<Directory /home/www/html> AddHandler mod_python .py PythonHandler mod_python.publisher PythonDebug On </Directory>
/home/www/html/
に以下の内容でmptest.py
という名前のファイルを作成:
from mod_python import apache def handler(req): req.content_type = 'text/plain' req.send_http_header() req.write("Hello World!") return apache.OK
- Apache を再起動:
# apachectl restart
- Apache が正しくロードされたことを確認。
http://yoursite.com/mptest.py/handler
を開いて以下のように表示されることを確認:
Hello World!
上記のように設定することで、テストディレクトリの .py で終わる URL をブラウザから使うことも可能です。例えばブラウザから /foobar.py
にアクセスすると mptest.py
によって処理されます。