Djangoを IIS6 で実行するには、すべての方法でPyISAPIeを使用する必要があるようです。これは、 PyISAPIe/Django インスタンスごとに個別のアプリケーション プールが必要なように思われるため、私たちにとっては問題になります。
アドバイスやガイダンスがある人、または経験を共有できる人はいますか (特に共有 Windows ホスティング環境で)。
Djangoを IIS6 で実行するには、すべての方法でPyISAPIeを使用する必要があるようです。これは、 PyISAPIe/Django インスタンスごとに個別のアプリケーション プールが必要なように思われるため、私たちにとっては問題になります。
アドバイスやガイダンスがある人、または経験を共有できる人はいますか (特に共有 Windows ホスティング環境で)。
使用する拡張機能に関係なく、個別のアプリケーション プールが必要です。これは、アプリケーション プールがハンドラー DLL を異なる w3wp.exe プロセス インスタンスに分割するためです。なぜこれが必要なのか疑問に思うかもしれません:
Django のモジュール設定を見てください: os.environ["DJANGO_SETTINGS_MODULE"]
. これがプロセスの環境であるため、同じアプリケーション プール内で 1 つの ISAPI ハンドラーを変更し、後で別のハンドラーを変更すると、両方とも新しい を指しDJANGO_SETTINGS_MODULE
ます。
これには意味のある理由はありませんので、Django 開発者にそれを行う必要がないことを納得させてください :)
これをハッキングする方法はいくつかありますが、個別のアプリ プールほどきれいに機能するものはありません。
残念ながら、isapi-wsgi では Django の問題は解決されないため、引き続き PyISAPIe を使用することをお勧めします (免責事項: 私は開発者です! ;)
Django は、あらゆる WSGI インフラストラクチャ (他の最新の Python Web アプリ フレームワークと同様) で適切に動作し、IIS で WSGI を実行する方法がいくつかあります。たとえば、http://code.google.com/p/isapi-wsgi/を参照してください。