CGI の動作を確認するのに、いちいちプロバイダに接続するのは面倒です。ここでは、自宅の Windows マシンのみで、Perl による CGI を動かす手順について説明します。
Perl は ActiveState 社の ActivePerl を、Webサーバーには An HTTPD を用います。Webサーバーとして Apache を用いる方法については「WindowsでApacheを使おう」を参照してください。
ActivePerl は Windows 上で動作するPerlです。再配布には制限がつきますが、利用は私用・商用を問わず無料で可能です。
ActivePerl は以下のページからダウンロードしてください。現時点(2003年9月)では AcrivePerl-5.6.1.635-MSWin32-x86.msi が最新版です。.msi ファイルをダブルクリックするとインストールが始まります。説明は英語ですが、適当に [Next >] ボタンを押していけばインストールできるでしょう。
http://www.activestate.com/Windows 9x/Me/NT の場合は別途 Windows Installer 2.0+ を入手してインストールする必要があります。
AN HTTPD は、中田氏が開発・配布されている、Windows上のウェブサーバーソフトです。下記のページからダウンロードできます。現在(2003年9月)の最新バージョンは 1.42k です。インストールは簡単、解凍するだけで完了です。
http://www.st.rim.or.jp/~nakata/ここでは、フォルダの構成が次のようになっていると仮定します。フォルダ構成が異なる場合は、適切に読み替えて設定してください。
AN HTTPDの設定は次の手順に従ってください。
まずは、通常のHTMLファイルを、AN HTTPD経由で読めるか確かめてみます。
localhost というのは、自分自身のマシンを示す名前です。うまく設定できていれば、http://localhost/test.html というアドレスの文書をブラウザで開くことができるはずです。これで、自分のマシンがウェブサーバーとして機能するようになりました。
「接続しますか?」のようなダイアログが表示される場合、Internet Explorerであれば[ファイル]-[オフライン作業]のチェックを外しておく、Netscape Navigatorであれば[ファイル]-[オンラインにする]を実行しておくなど、いろいろやってみてください。あくまで、自分のマシンから自分のマシンへオンラインで接続(電話はかけないで)することにより、CGIは動作します。
Netscape Navigatorでプロキシの設定をされている場合は、[編集]-[設定]-[詳細]-[プロキシ]-[手動でプロキシを設定する]-[表示]の[次で始まるドメインにはプロキシサーバを使用しない]の欄に localhost を追加しておいてください。
また、localhost でうまくいかない場合は、localhost の代わりに 127.0.0.1 というアドレスで試してみてください。127.0.0.1 は、自分自身を示す特別なアドレスです。
次に、簡単なCGIのテストを行ってみます。次のような内容の、簡単なCGIスクリプト(C:\HomePage\cgi-bin\test.cgi)を作成してください。
print "Content-type: text/html\n"; print "\n"; print "<html>\n"; print "<head>\n"; print "<title>CGIのテスト</title>\n"; print "</head>\n"; print "<body>\n"; print "<p>CGIのテスト</p>\n"; print "</body>\n"; print "</html>\n";
これを、ブラウザから http://localhost/cgi-bin/test.cgi というアドレスで呼び出すと、「CGIのテスト」が表示されるはずです。以上で、Windows パソコンで CGI を動かす環境が整いました。あとは、自分で CGI スクリプトをいろいろ改造、開発しながら試してみてください。