PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用)

PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する手順を紹介します。

補足
Active Phtyon ではなく Python for Windows を利用する場合はこちらの記事を参照して下さい。

事前準備

Active Python をインストールします。インストール手順はこちらの記事を参照してください。
また、IISにFastCGI モジュールをインストールします。IISにFastCGI モジュールをインストールする手順の詳細については、こちらの記事を参照してください。

手順

[インターネット インフォメーションサービス(IIS) マネージャー]を起動します。左側のツリービューからサーバーのノードをクリックして選択します。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像1

右側のエリアの[ハンドラー マッピング]の項目をダブルクリックします。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像2

[ハンドラー マッピング]の設定画面が表示されます。画面右側の[スクリプトマップの追加]リンクをクリックします。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像3

[スクリプトマップの追加]ダイアログが表示されます。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像4

[実行可能ファイル]テキストボックスの右側の[...]ボタンをクリックしてPythonの実行ファイルを選択します。実行ファイルはPythonのインストールディレクトリの"Python.exe"を指定します。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像5

[要求パス]の項目にPythonの拡張子 "*.py" を入力します。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像6

[名前]の欄にはスクリプトマップの名称として表示したい名称を入力します。今回は "Python" と入力しました。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像7

[要求の制限]ボタンをクリックします。下図の画面に切り替わります。
基本的にはデフォルトの設定のまま利用します。下図が[マップ]タブの設定です。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像8

[動詞]タブの設定です。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像9

[アクセス]タブの設定です。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像10

設定が完了しましたら、[スクリプトマップの追加]ダイアログの[OK]ボタンをクリックします。

このISAPI拡張を有効にしますか?[はい]をクリックすると、[ISAPIおよびCGIの制限]の一覧の"許可済み"の項目に、拡張機能が追加されます。[ISAPI および CGIの制限]の一覧に拡張機能の項目が既に存在する場合は、"許可済み"に更新されます。

上記のメッセージが表示された、下図の確認ダイアログが表示されます。[はい]ボタンをクリックしCGIの実行を許可します。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像11

IISマネージャーの[ハンドラー マッピング]の画面のハンドラーの一覧に作成した"Python"の項目が追加されます。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像12

補足:エラーが発生する場合

ISAPI拡張を有効にするかの確認ダイアログで[はい]ボタンをクリックした後、下図のエラーメッセージ

このハンドラーに対して指定されたモジュールが、モジュールの一覧にありません。スクリプト マップ ハンドラー マッピングを追加する場合は、モジュール一覧にIsapiModule または CgiModule が存在している必要があります。

のダイアログが表示される場合があります。このエラーが発生した場合、IISにCGIの拡張機能が導入されていない可能性があります。エラーが発生した場合は、IISにFast CGIモジュールがインストールされているか確認します。IISにFastCGI モジュールをインストールする手順の詳細については、こちらの記事を参照してください。

PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像13

動作確認

Webサイトとして公開されるディレクトリ内にPythonのファイルを作成します。今回は"test.py"ファイルを配置します。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像14

ファイル内に下記のコードを記述します。

print ("Status: 200 OK")
print ("Content-type: text/html")
print ("")
print ("<HTML><HEAD><TITLE>Hello Python</TITLE></HEAD>")
print ("<BODY>")
print ("Hello Python World!")
print ("</BODY>")


PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像15

WebブラウザでPythonのファイルにアクセスします。Pythonが正しく実行されていれば、下図の画面、"Hello Python World!"のメッセージが表示されます。
PythonスクリプトをIIS(Internet Information Services)で実行できるよう設定する (Active Pythonを利用):画像16


AuthorPortraitAlt
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
作成日: 2017-10-13
Copyright © 1995–2025 iPentec all rights reserverd.