過去に、Windows 8 Developer PreviewでDjango 8の下でIISを実行しようとしました。 Windows 8のコンシューマープレビューが公開されたので、IIS内でDjangoを設定するための詳細な手順を入手できるかどうか疑問に思いました。
このプロセスはどのように進めればよいのでしょうか-どこから始めればよいのかほとんどわかりません。特定のISAPIモジュールが必要ですか?
このプロセスは簡単ではありませんが、次の手順を使用して可能です。
まず、ダウンロードしてインストールします Python 2.6 。 (Python 2.6の代わりにPython 2.6を提案する理由は、PyISAPIeモジュールでサポートされる最新のPythonバージョンがPython 2.6。)インストールした場所を書き留めますPython to(C:\Python26
デフォルトでは正しく覚えている場合)。
[コンピューター]を右クリックし、[プロパティ]をクリックします。左側の[システムの詳細設定]をクリックします。
詳細設定タブをクリックし、[環境変数]ボタンをクリックします。下部のリストボックスでパスを見つけます。
[編集...]ボタンをクリックして、変数値の最後に移動し、;C:\Python26
(セミコロンとインストールしたパスPython to))を挿入します。
[OK]をクリックして、すべてのダイアログを閉じます。
次に、最新バージョンのPyISAPIe here をダウンロードします。アーカイブのコンテンツをどこかに抽出し、ディレクトリを開きます。
次に、コントロールパネルを開き、[プログラムと機能]をクリックして、左側にある[Windowsの機能の有効化または無効化]をクリックします。
[インターネットインフォメーションサービス]-> [World Wide Webサービス]-> [アプリケーション開発機能]に移動し、[ISAPI拡張機能]がオンになっていることを確認します。
変更を適用してからIIS Managerを開きます。[ハンドラーマッピング]アイコンをダブルクリックします。
右側の[モジュールマッピングの追加]をクリックします。表示されるダイアログで、次の情報を入力します。
PyISAPIe.dll
]を選択します
次のようになります。
ダイアログを閉じる前に、[リクエストの制限]をクリックし、[リクエストがマップされた場合にのみハンドラを呼び出す:]をオフにして、[OK]をクリックします。また、[OK]をクリックして[モジュールマッピングの追加]ダイアログを閉じます(ISAPIおよびCGIの制限リストに許可されたエントリを持つ拡張機能を追加するかどうかを尋ねられたら、[はい]をクリックします)。
次のステップは Django をダウンロードすることです。アーカイブのコンテンツをどこかに抽出します(場所に注意してください)。コマンドプロンプトを開きます(これは、 Win + R、cmd
と入力して、 Enter)と入力し、cd
の後に抽出した場所を続けますDjango to:
押す Enter、cd dj
と入力してから、Push Tab。これでDjangoフォルダへのパスが完成し、 Enter ディレクトリを開きます。次にpython setup.py install
と入力します。
Djangoプロジェクトを作成する必要があります。例として、C:\Django
の下にプロジェクトを作成します。コマンドウィンドウで、次のコマンドを入力します。 Enter:
cd C:\
mkdir Django
cd Django
python C:\Python26\Lib\site-packages\Django\bin\Django-admin.py startproject test
これにより、「test」という名前のプロジェクトが作成されます。
プロセスが正常に完了したら、残りの最後のタスクはPyISAPIeをDjangoに接続することです。これを行うには、PyISAPIeを抽出したディレクトリに戻り、Httpディレクトリを探します。内部はファイルIsapi.py
です。テキストエディターで開き、内容を次のように置き換えます。
from Django.core.handlers.wsgi import WSGIHandler as DjangoHandler
from Http.WSGI import RunWSGI
from Http import Env
import os, sys
sys.path.append('C:\Django')
os.environ['Django_SETTINGS_MODULE'] = 'test.settings'
def Request():
PathInfo = Env.PATH_INFO
if not PathInfo.startswith('/'):
return True
for Excl in ['/media']:
if PathInfo.startswith(Excl):
return True
return RunWSGI(DjangoHandler(), Base='/')
HttpディレクトリをC:\Python26\Lib\site-packages
(またはPython他の場所にインストールした場合は適切なディレクトリ)にコピーします。
再起動IIS(IIS Manager)の右側にある[再起動]をクリックしてこれを行うことができます):
すべてが正しく機能していれば、 http:// localhost にアクセスして新しいDjangoサイトを表示できます:
その他の注意事項と追加事項
私はそれ以来PyISAPIeをPython 2.7自分で(32ビットと64ビットの両方))コンパイルし、ここにファイルをアップロードしました: http://www.box.com/s/ a5fb1b21fcdf738d259
手順6では、pyisapie.dll
がIISに少なくとも読み取りアクセス権がある)ディレクトリにあることを確認する必要があります。これを考慮しないと、奇妙なエラーが発生します。
IIS8にDjangoをインストールする方法の詳細なガイドは、このブログ投稿内にあります。
インストールDjango:ステップバイステップチュートリアル
つまり、次の手順を実行する必要があります。
お役に立てば幸いです。
もう2つのオプションは、Django-windows-toolsを使用することですが、2、3年は更新されていません。 IISでFastCGIモジュールを設定するだけなので、PyISAPIeの利用について心配する必要はありません。