mod_wsgi(Apache)—Werkzeugのドキュメント
mod_wsgi (Apache)
Apache Webサーバーを使用している場合は、 mod_wsgi の使用を検討する必要があります。
mod_wsgi をインストールしています
mod_wsgi がまだインストールされていない場合は、パッケージマネージャーを使用してインストールするか、自分でコンパイルする必要があります。
mod_wsgi インストール手順は、UNIXシステムでのソースインストールのインストール手順をカバーしています。
ubuntu / debianを使用している場合は、次のようにapt-getしてアクティブ化できます。
# apt-get install libapache2-mod-wsgi
FreeBSDでは、 www / mod_wsgi ポートをコンパイルするか、pkg_addを使用して、 mod_wsgi をインストールします。
# pkg_add -r mod_wsgi
pkgsrcを使用している場合は、 www / ap2-wsgi パッケージをコンパイルして mod_wsgi をインストールできます。
最初のapacheのリロード後に、segfaultingの子プロセスに遭遇した場合は、それらを無視しても問題ありません。 サーバーを再起動するだけです。
.wsgi ファイルの作成
アプリケーションを実行するには、 yourapplication.wsgi ファイルが必要です。 このファイルには、アプリケーションオブジェクトを取得するために起動時に実行されているコード mod_wsgi が含まれています。 そのファイル内の application というオブジェクトがアプリケーションとして使用されます。
ほとんどのアプリケーションでは、次のファイルで十分です。
from yourapplication import make_app
application = make_app()
アプリケーション作成用のファクトリ関数がなく、シングルトンインスタンスがある場合は、そのインスタンスを application として直接インポートできます。
そのファイルを再び見つかる場所(例: / var / www / yourapplication )に保存し、 yourapplication と使用中のすべてのライブラリがPythonロードにあることを確認します道。 システム全体にインストールしたくない場合は、仮想Python インスタンスの使用を検討してください。
Apacheの構成
最後に行う必要があるのは、アプリケーション用のApache構成ファイルを作成することです。 この例では、セキュリティ上の理由から、 mod_wsgi に別のユーザーでアプリケーションを実行するように指示しています。
<VirtualHost *>
ServerName example.com
WSGIDaemonProcess yourapplication user=user1 group=group1 processes=2 threads=5
WSGIScriptAlias / /var/www/yourapplication/yourapplication.wsgi
<Directory /var/www/yourapplication>
WSGIProcessGroup yourapplication
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
</VirtualHost>