>>家サーバーを構築しよう>>自宅サーバー構築の前に>>ApacheでCGIを動かしたい
●ApacheでCGIを動かしたい

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でも動作します。



正常に設定出来ていれば、上記の画面が表示されます。




トップへ戻る

Copyright (C) 2004 IESV.NET Allrights reserved.