ApacheでCGIを動作させるには、Perlを入手する必要があります。
Perlには、ActivePerlやJPerlなどがありますが、ここでは比較的簡単で有名な?ActivePerlを使用します。
JPerlなどを使いたい方は、ご自身でお調べ下さい。
このプログラムは、Windowsインストーラーを利用しますので、下記の表にしたがって、事前にインストールしておいて下さい。
OS |
必要なもの |
Windows95/98/98SE/Me |
ダウンロード |
WindowsNT/2000/2000Server |
ダウンロード |
WindowsXP/Server2003 |
不要 |
まず、Perlを入手します。 ActiveStateのホームページから、ダウンロードをして下さい。
ActivePerlのダウンロードページ(http://www.activestate.com/Products/Download/Register.plex?id=ActivePerl)
ダウンロード方法ですが、ActivePerlのページの下の方に、「Next」というボタンがあります。 それをクリックすると、メールアドレスなどを入力する画面がありますが、入力しなくても大丈夫です。
そして、「Next」をクリックし、ActivePerl5.6.1、または5.8の、Windows MSIをクリックします。
ダウンロードが開始されます、ISDNなどの低速回線だとちょっと厳しいかもしれません。
個人的には、5.8よりも5.6.1の方が安定していていいような気がします。
このようなファイルがダウンロードしたら作成されているはずですので、コイツをダブルクリックします。
インストーラーが起動します。「Next」をクリックして下さい。
内容を良く読み、「I accept the License Agreement」にチェックを入れ、「Next」をクリックします。
インストール先フォルダを、標準のC:\Perl\から、C:\usr\へ変更します。
これを行わないと、Perlスクリプトの1行目を書き換える必要があり、非常に面倒です。
また、インストール後、#/usr/bin/perlでも、#/usr/local/bin/perlでも動作させる方法を紹介します。
「Next」をクリックします。
「Next」をクリックします。
「Install」をクリックします。
インストールが開始されます。途中、フリーズした感じになる場合がありますが、無視して放置して下さい。しばらくすれば、再開します。
インストールが完了しました。「Finish」をクリックします。
このままでは、Perlのパスが#!/usr/bin/perlでないと動作しないので、Perlのパスが#!/usr/local/bin/perlでも動作するようにします。
まず、Cドライブの「usr」フォルダを開いて下さい。その中に、「local」というフォルダを作成して下さい。
そして、「usr」フォルダにある「bin」フォルダを丸ごと「local」の中にコピーします。移動ではなく、コピーです。
そして、システムを再起動させます。
次に、Apacheの設定を行います。
C:\Program Files\Apache Group\Apache2\confにある、httpd.confをメモ帳なりTeraPadなりで開いて下さい。
238〜241辺りをまずは修正します。
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
↓
<Directory />
Options FollowSymLinks +ExecCGI
AllowOverride None
</Directory>
次に、CGIとして動作させる拡張子を指定します。783行目辺りの先頭の#を削除します。
#AddHandler cgi-script .cgi
↓
AddHandler cgi-script .cgi
そして、Apacheを再起動させます。再起動方法は、
スタート>>全てのプログラム>>Apache HTTP Server 2.0.xx>>Control
Apache Server>>Restart
をクリックすると、DOS窓が立ち上がって、Apacheが再起動します。
それでは、Apacheで正常にCGIが使えるかテストしてみましょう。
ApacheとWindowsで構築したサーバーは、通常のUNIX(または互換)のサーバーとは、設定が異なります。
一番異なるのは、やはりパーミッション(アクセス権)だと思います。Windowsなら、基本的に設定は不要です。
CGIと言われたらまずは掲示板だと思います。そこで、KENT WEBさんの簡単な掲示板を設置してみます。他のスクリプトでもほとんど同じですが、一部の物はWindowsでは動作しません。
まずは、掲示板をダウンロードします。http://www.kent-web.com/bbs/aska.htmlから入手して下さい。zip形式なら、WindowsXPに解凍機能がありますので、zip形式で入手した方が楽かと思います。
ダウンロードすると、このようなファイルが出来ていると思いますので、これを右クリックします。
そして、すべて展開をクリックします。
「次へ」をクリックします。
解凍先のフォルダを指定します。ここでは、後で移動させる必要が無いようにC:\HomePage\askaに解凍します。
そして、「次へ」をクリックします。解凍が開始されます。
「完了」をクリックします。念の為、ファイルが正常に解凍されているかご確認下さい。
CGIの設定はしなくても動作しますので、とりあえず動かしてみましょう。
まず、デスクトップなどの一時的な場所に解凍した場合は、C:\HomePageへフォルダごとコピーしてください。
それでは、テストをします。
ブラウザに、http://127.0.0.1/aska/aska.cgiと入力して下さい。掲示板が表示されましたか?適当に書き込みをして、正常に動作しているかをご確認下さい。
なお、Perlのパスは#!/usr/bin/perlでも、#!/usr/local/bin/perlでも動作します。
正常に設定出来ていれば、上記の画面が表示されます。
|
|