インターネット&PC120%活用:インターネット活用編

ローカルサーバー環境でCGIのテスト(appache)

 

1 PERLを使ってみる

CGIプロフラムの前に、Perlをちょっとだけ使ってみましょう。
例によって、プログラムの第一歩。"HELLO"を表示するプログラムをPerlで作ってみます。

<test.pl>

#!D:/jplwin32/jperl   

print "HELLO";

たったこんだけです。1行目の#! はperl の実行ファイルへのパスを記述しています。
おじさんの場合は、Dドライブのjplwin32 フォルダのjperlがPerlの実行ファイルになります。
ただし、これはCGI用に必要な記述で、今回のようにPerlプログラムを直接実行する時は不要
な記述です。
Perl自体は見ての通り、C言語に似ています。

それでは、実行してみます。Perlプログラムを直接実行する場合は、perl(ここではjperl)の後に
プログラム名を記述します。

D:\jplwin32>jperl test.pl           
HELLO
D:\jplwin32>


2 CGIプログラムテスト

(1) 乱暴はいかん
いきなり、CGIプログラムを作って動作の検証もせずに、プロバイダーのサーバーにアップする
乱暴な人はまさかいないと思いますが、いちおうローカルサーバー環境でDebugしてからアップ
するようにしましょう。

(2) 準備

Apacheはインストールすると
apache--Apache
       |--bin
      |--cgi-bin
       |--conf
       |--htdocs
というようなフォルダの構成になります。CGIプログラムはhtdocsフォルダに作制します。
ちなみに、おじさんは、htdocsフォルダの下に更にtestフォルダを作り、そこにCGIプログラムを
置いています。CGIプログラムを置く位置はhttpd.confの記述を変更すると、変更できます。
おじさんは、Dドライブにapacheをインストールしていますので、CGIプログラムのパスは
D:\apache\Apache\htdocs\test\CGIプログラム
となっています。

(3) HELLOプログラム作制
というわけで、またしても"HELLO"とブラウザ上に表示するCGIプログラムを作制いたします。

<test.cgi>

#!D:/jplwin32/jperl

print "Content-type: text/html\n\n";
$name="KASAI";
print <<"HTML_END";
<html>
<head><title>CGI TEST</title></head>
<body><hr>HELLO! My Name is $name.<br><hr>     
<br>
</body>
</html>
HTML_END
exit;

とりあえず、プログラムの中身は今回は置いときます。
1行目の #! ではじまる行は前にも書いた通り、perlの実行ファイルまでのパスを記述します。
上の例は、おじさんの環境での記述なので、皆さんの環境にあわせて書き換えて下さい。
最後のexit; も忘れず記述してください。これがないとエラーがでます。


このプログラムを、htdocsフォルダ以下におきます。(おじさんはhtdocs\testに置いてます)
さて、これで準備完了です。

(4) ローカルサーバー環境での動作テスト
まずは、apacheを起動して下さい。起動するとDOS窓が開いて、apache runing ....とか表示
されるはずです。
それから、Windows95の場合は(98でもそうかも)、インターネットに接続して下さい。
(オフラインでは、動作しませんので)
接続したら、URLアドレスは 127.0.0..1/CGIプログラム  と打って下さい。そうすると、
htdocsフォルダにあるCGIプログラムが実行されるはずです。
さて、おじさんの環境では、testフォルダにtest.cgi を置きましたので、
127.0.0.1/test/test.cgi
と打ちます。すると、次のようにブラウザ上に表示されます。

ということで、ローカルサーバー環境でのCGIプログラムの動作テストはひとまず完了です。
なお、Windows上に構築した、ローカルサーバー環境では、パーミションの設定という概念は
ありません。
また、いったんインターネットに接続してこの画面の表示までくれば、後は切断してオフラインモード
にしてもO.K.です。電話代をけちりたい人はこれ以後オフラインにして結構です。

<最新情報追記>
Windows XP + Apache 2.0.47 ではパソコンを起動すると、自動的にapacheも起動します。
また、インターネットに接続しなくても、ローカルサーバ環境で動作させることができます。

TopPage


inserted by FC2 system