サーバサイドスクリプトを実行させる( CGI・Perl 編 )

動作確認環境は以下の通りです コンテンツ

CGI・Perlを動かそう

Apache が動作する環境なら既に CGI は実行可能らしい・・・です。
しかし一般的なCGIは Perl ですので、Perlが動作する環境を作ります。

Prelの実行環境はActive StateのActive Prelというフリーソフトを使用します。

Active Perlの入手

以下のサイトに行きActive Perlを入手します。2002/10/20 時点での最新版はActivePerl-5.6.1.633-MSWin32-x86.msi です。
Active Stateのトップへージの右下部に「Active Prel」- [Download]をクリックします。

Active State

図P-01 Active Perlの入手はここから

[Download]をクリックすると以下の画面が表示されますので、

[Email Address]欄:あなたのメールアドレス
[Name (First / Last)]欄:あなたのお名前
を入力し、[NEXT]をクリックします

図P-02 Active Perlの入手はここから2

必要事項を入力すると以下の画面が表示されます。
ページ中央の表にActive Perlのバージョンが表示されていると思います。[Windows] - [MSI]をクリックし、ダウンロードします。

図P-03 Active Perlの入手はここから3

Active Perlのインストール

ダウンロードしたファイルを起動すると以下の様な画面が出現します。( 図P-04 )
インストールの手順を示します。(バージョンやインストールするマシンの環境などにより若干表示が違う場合があります。)

図P-04 Active Perlのインストールはここから1

[NEXT]をクリックします。次にインストール方法を聞かれますが、[Modfy](標準って意味)をクリックします。( 図P-05 )

図P-05 Active Perlのインストールはここから2

インストールするコンポーネントを選択しますが、このまま[NEXT]をクリックします。( 図P-06 )

図P-06 Active Perlのインストールはここから3

「PPM3」というプログラムも一緒に組み込むかを聞いています。今回は必要がないので、このまま「Next」を押します。( 図P-07 )

図P-07 Active Perlのインストールはここから4

[Add perl to the PATH environment variable]
あなたのパソコンの環境変数にPerlのパスを追加するかの指定です。これは必ずチェックします。( 図P-08 )
[Create Perl file extension association]
拡張子 .pl を Perlに関連付けを行うかの指定です。今回はどちらでも構いませんが、迷う方はとりあえずチェックをしておきます。( 図P-08 )

図P-08 Active Perlのインストールはここから5

インストールを開始します。( 図P-09 )

図P-09 Active Perlのインストールはここから6

Active Perlとマシンの関連付け

Active Perlをあなたのマシンで実行できる様、設定します。

  1. [コントロールパネル] - [システム] で「システムのプロパティ」画面を表示します。
  2. [詳細]タブをクリックし、[環境変数]ボタンをクリックします。

図P-10 Active Perlの関連付け1

「環境変数」画面で「システム環境変数」の欄に
変数」欄:[Path]
」欄:[C:\Perl\bin\;]
が追加されている事を確認します。なければ追加します。

図P-11 Active Perlの関連付け2

Active Perlの動作確認

MS-DOSプロンプトで以下のコマンドを実行します。
perl -v
以下の画面が表示されればPerlは正常に動作しています。

図P-12 Active Perlの動作確認

▲ページの最上部に戻る

Perl実行時の設定

CGIファイルはどこに置けばいいのか?

Apache のデフォルトでは、
C:\Program Files\Apache Group\Apache\cgi-bin
になっていますので、「cgi-bin」内に cgi ファイルを格納します。

例えば bbs.cgi というCGIを実行したいのなら、
C:\Program Files\Apache Group\Apache\cgi-bin 内に bbs.cgi を設置し、ブラウザのURL欄に、
http://localhost/cgi-bin/bbs.cgi で実行されるハズです。

動作しない場合、cgiファイルの1行目が #!C:/Perl/bin/perl になっているかを確認して下さい。
フリーで配布されているcgiなどは #!/usr/bin/perl などになっている事があるので、必ず確認します。

CGI ファイル格納のローカルパスを変更する場合

C:\Program Files\Apache Group\Apache\conf 内にある httpd.conf614行目付近と620行目付近を適宜編集します。
 
614 行目付近 : ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache/cgi-bin/"
変更 ScriptAlias /cgi-bin/ "任意のローカルパス/"
620 行目付近 : <Directory "C:/Program Files/Apache Group/Apache/cgi-bin">
変更 <Directory "任意のローカルパス">

上記2つの「任意のローカルパス」というのは同一でないとなりません!
またローカルパスは「\」ではなく「/」でないといけません!

614 行目付近の ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache/cgi-bin/"
/cgi-bin/は、「 http://Host Name/cgi-bin/ファイル名 」になります。
例えば、/cgi-bin//mycgi/ とすると実際のアクセスは「 http://Host Name/mycgi/ファイル名 」になります。
また、ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache/cgi-bin/"
のパスはディレクトリの区切りは「/」で、最後は必ず「/」で閉じなければなりません!

図P-13 614 行目付近と 620 行目付近を適宜変更します

変更の例
614 行目付近を ScriptAlias /mycgi/ "C:/web/mycgi/" に、
620 行目付近を <Directory "C:/web/mycgi"> にする場合、
C:/web/mycgi/ のフォルダ内に cgi ファイルを格納し、ヴラウザで「 http://HostName/mycgi/ファイル名 」でアクセスが可能になるワケです。

▲ページの最上部に戻る
Technical Top

Copyright© Kensuke Imai. All Right Reserved.
webmaster@miloweb.net