Windows VPS : IIS-WebでCGIを利用するには

カテゴリー:Windows OS, Windows VPS タグ:, , , , ,
 

この文書ではWindowsVPSサーバーにおいてご利用中のIIS-WebでCGIを利用可能にする設定方法を記載します。

1. 利用した環境

  • Parallels Virtuozzo 4.0 for Windows
  • Microsoft Windows Server 2003 DataCenter Edition 64bit版
  • IIS 6.0
  • ActivePerl 5.10.1.1007-MSWin32-x64-291969.msi

2. ActivePerlのインストール

ActiveState社のサイトから最新版もしくは必要なバージョンのActivePerlをダウンロードします。ダウンロードしたアイコンをダブルクリックします。

w64p1-2

セットアップウィザードが開始されるので「Next」をクリックします。


w64p2-2

ライセンスの同意を求められます。同意できれば、「I accept the terms in the license Agreement」をチェックして、「Next 」を押します。

w64p3-2

インストールするディレクトリの指定を求められるので、インストール場所を指定し「Next」ボタンを押します。特に要望がなければデフォルトのままでよいでしょう。

w64p4-2

セットアップオプションを選択できますが、デフォルトのままでよいでしょう。

w64p5-2

「Install」ボタンをクリックしてインストールを開始します。

インストール完了までしばらく待ち、「Finish」をクリックしてウィンドウを閉じます。

3. cgi-binディレクトリの作成

任意の場所にcgi-binディレクトリを作成しておきます。
今回は C:\Inetpub に作成しました。

4. IISの設定

「スタート」-「管理ツール」-「インターネットインフォメーションサービス(IIS)マネージャ」を開き、「ローカルコンピュータ」-「Webサービス拡張」を開きます。

w64p6

「Webサービス拡張」の「新しいWebサービス拡張を追加」をクリックします。

w64p7

「拡張名」には例えばCGIなど任意の名前を指定し、「追加」をクリックします。

「ファイルの追加」ウィンドウが開いたら「参照」ボタンをクリックし、Perlをインストールしたディレクトリ以下からperl.exeを探し出して指定し、スペースを1つ空けて “%s” %s と入力します。デフォルトであればC:\Perl64\bin\perl.exe “%s” %s となるでしょう。

w64p8

ファイルパスを指定したら「OK」で閉じます。その際「ファイル名の環境変数は展開されません」と表示されますが「OK」をクリックします。

w64p9

「拡張の状態を許可済みに設定する」にチェックを入れ、ウィンドウを「OK」で閉じます。

IISマネージャに戻り「既定のWebサイト」を右クリック「新規作成」-「仮想ディレクトリ」を選択します。

w64p10

「仮想ディレクトリの作成ウィザード」が立ちあがったら「次へ」をクリックします。

w64p11

エイリアスは「cgi-bin」などと指定し「次へ」をクリックします。

ディレクトリのパスは、「参照」ボタンをクリックし、3項で作成した cgi-bin ディレクトリを指定します。

w64p12

パスを指定したら「次へ」をクリックします。

アクセス許可を下記に与えます。
・読み取り
・ASPなどのスクリプトを実行する
・ISAPIアプリケーションやCGIなどを実行する

w64p13

3か所にチェックを入れ「次へ」をクリックします。

w64p14

「完了」をクリックしてウィザードを終了します。

ウィザードが終了するとIISマネージャに戻ります。

w64p15

仮想ディレクトリ「cgi-bin」を右クリックして「プロパティ」を開きます。

w64p16

「仮想ディレクトリ」タブにある「構成」をクリックします。

w64p17

「マッピング」タブの「追加」をクリックします。

アプリケーションの拡張子マッピングの編集を行います。
「実行可能ファイル」には「参照」をクリックしてPerlをインストールしたディレクトリ以下からperl.exeを探し出して指定し、スペースを1つ空けて “%s” %s と入力します。
デフォルトであればC:\Perl64\bin\perl.exe “%s” %s となるでしょう。 
「拡張子」は .cgi
「制限」は GET,HEAD,POST
としておけばよいでしょう。

w64p18

編集できたら「OK」で全てのウィンドウを閉じます。

4. 確認

以下のようなサンプルファイルを作成し、hello.cgiなどの名前を付けて第3項で作成した cgi-bin ディレクトリに保存します。

print “Content-type: text/html\n\n”;
print “Hello\n”;

 

w64p19

ブラウザで閲覧できることを確認します。


CGIが有効になりました。

5. 認証画面が表示されたら

手順4までを行っていれば CGIページの閲覧ができるはずですが、認証画面が表示された時は匿名アクセスを有効にしてください。

w64p20

IISマネージャの「既定のWebサイト」に作成した「cgi-bin」を右クリックし「プロパティ」を開きます。
「ディレクトリセキュリティ」タブの「認証とアクセス制御」にある「編集」をクリックし
「匿名アクセスを有効にする」にチェックを入れ「OK」で閉じます。