it-swarm-ja.com

Apache2でPythonを使用するにはどうすればよいですか?

ApacheでPythonを使用しようとしていますが、CGIまたはmod_pythonで成功していません。

誰かが良いチュートリアルなどを知っていますか?

ありがとう。

13
Vallery

mod_pythonは基本的にメンテナンスされていません-mod_wsgiを調べる必要があります。パッケージlibapache2-mod-wsgiをインストールし、Sudo a2enmod wsgiを発行して有効にします。

実行する簡単な例として、/etc/Apache2/sites-enabled/defaultに次のようなものを挿入します。

WSGIScriptAlias /test /path/to/python/file.py

ファイル/path/to/python/file.py

def application(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/plain')])
    return "Hello World"

Apache2を再起動すると、/testへの要求は、pythonファイル内のapplication()の呼び出しに変わります。

さらに読むには、WSGI(WebServer Gateway Interface)を調べてください。the方法PythonはWebサーバーと統合します。

ボーナス/アップデート:

Python(当然)には、テスト用の標準ライブラリに小さなWSGIサーバーがあります。これをファイルの下部に追加すると、テスト目的で古い実行可能ファイルとして実行し、Apacheに本番環境を引き継ぐことができます。

if __== '__main__':
    from wsgiref.simple_server import make_server

    httpd = make_server('', 8080, application)
    print "Serving on http://localhost:8080"

    httpd.serve_forever()
17
Morten Siebuhr