Debian/Apache/Python2.6/Django セットアップで mod_wsgi をデーモン モードで実行するのに問題があります。私の仮想ホスト構成ファイルには、
<VirtualHost *:80>
ServerName mysite.com
WSGIDaemonProcess mysite.com processes=2 threads=15
WSGIProcessGroup mysite.com
WSGIScriptAlias / /path/to/mysite/wsgi/django.wsgi
<Directory /path/to/mysite/wsgi/>
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
設定。デーモン モードのアクティブ化をテストするには、次の wsgi スクリプトを使用します。
import sys
import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')
def application(environ, start_response):
print >> sys.stderr, 'mod_wsgi.process_group = %s' % repr(environ['mod_wsgi.process_group'])
from django.core.handlers.wsgi import WSGIHandler
_application = WSGIHandler()
return _application(environ, start_response)
結果のログファイルには常に次のように表示されます。
mod_wsgi.process_group = ''
ドキュメントによると、これはデーモンモードが使用されていないことを示しています。セットアップを何度も確認しました。Apache、mod_wsgi、および Python のバージョンは一致しており、そこで読んだすべての HOWTO によると、セットアップは正しいです。何が欠けている可能性がありますか?
編集: 参考までに、私のアプリケーションは組み込みモードで正常に動作しています。デーモン モードに切り替えたかっただけで、上記の wsgi スクリプトを使用してアクティブ化されていないことがわかりました。