Djangoアプリケーションをcpanelシステムで起動して実行しようとしています。mod_wsgiをインストールし、ここのガイドに従っています: http://www.nerdydork .com/settings-up-Django-on-a-whm-cpanel-vps-liquidweb.html
しかし、次に何をすべきかわからないので、今は混乱しています。アプリケーションには.pyファイルがあり、次の方法で実行できます:python manage.py runserver 211.144.131.148:8000
ただし、これはコマンドライン経由でポート8000にバインドされます。代わりにApacheを使用したいと思います。
問題は、そのチュートリアルでは、Apacheに.pyファイルを認識させ、必要に応じてアプリケーションを実行する方法については詳しく説明していません。次に何をしますか?
mod_wsgi
を使用している場合、Apacheに.py
ファイルを認識させたくありません。紛らわしいですよね?ここで、説明させてください...
WSGIモジュールは、ApacheとPythonプロセスの間の一種の相互接続を提供します。これは、いわば標準化されたゲートウェイインターフェイス(Webサーバーゲートウェイインターフェイス)です。
これが公式のDjango Django 1.1 with Apache&mod_wsgi
の設定に関するドキュメントです。
通常、必要なのは次のとおりです。
WSGIScriptAlias / /path/to/mysite/Apache/Django.wsgi
次に、Djangoアプリケーションのフロントとして機能するWSGIアプリケーションを定義する必要があります:
import os import sys os.environ ['Django_SETTINGS_MODULE'] = 'mysite.settings' import Django .core.handlers.wsgi application = Django.core.handlers.wsgi.WSGIHandler()
*上記のリンク先のドキュメントからこれらの例を取り上げたことに注意してください。
これにより、ApacheがWSGIアプリに接続され、アプリケーションがそのWSGIアプリに関連付けられます。 WSGIScriptAlias行は、URLルーティングを管理するWSGIアプリケーションに「/」以下のすべての要求を送信するようにApacheに指示するだけです。
私は通常、FastCGIとPython flupモジュールを使用してこのような展開を行います。これはもう少し複雑ですが、時間があればチェックする価値があります。