自宅サーバに初心者が挑戦します!
トップ >>  WEB 

5-4. ApacheでCGI (UNIX編)
February 25, 2006:更新

ApacheでCGIを利用できるようにします。Apacheのインストールに関しては、「5-2. Apacheのインストールと基本設定」をご覧下さい。

 まずは、Perl がインストールされていることが前提となります。Perl がインストールされているかどうかを確認する場合には、

% whereis perl

で確認します。

インストールされている場合には、

% whereis perl
perl: /usr/bin/perl /usr/share/man/man1/perl.1.gz

と表示されます。インストールされていない場合には、何も表示されません。その場合には、rootになって、

# yum install perl

でインストールしましょう。


■Apacheのコンフィグ

実際にApacheのConfigファイルを編集します。rootになる必要があります。Fedora Core の場合には、コンフィグファイルは、/etc/httpd/conf/httpd.conf になります。ソースコンパイルでインストールした場合には、/usr/local/apache2/conf/httpd.conf になります。

まずは、CGI が実行できるようにします。Directory 設定の中で、CGIの動作を可能にしますが、設定ファイル内で、「Exec 」で検索をかけると近い場所が表示されます。

Options Indexes FollowSymLinks ExecCGI

とOption の変更をします。デフォルトの設定だと、IndexesとFollowSymLinds しか無いはずです。

また、もう一箇所、

AddHandler cgi-script .cgi
が最初はコメントアウト(行頭の#)がしてありますが、これを外します。ここでは、拡張子「.cgi」がCGIであると認識されます。

以上で設定は終わりです。


■設定ファイルの文法チェック

 Apacheには、設定ファイルの文法をチェックする機能があります。設定ファイルがうまく記述されていないとき、Apache が起動しないことがあります。まず、設定を反映させる前に文法のチェックを行いましょう。

 文法のチェックは簡単です。

# httpd -t
Syntax OK

「Syntax OK」と表示されればそれでおしまいです。エラーが表示された場合には、そのエラーの箇所をチェックします。


■Apacheの再起動

 ここまで設定の変更をしてきました。単にファイルを保存しただけではその設定はApacheには反映されません。反映するためにはApacheを再起動する必要があります。Apacheの再起動にはいくつか方法はありますが、apachectl を使います。一度に再起動しても良いのですが、一旦停止して、その後起動とした方が何か問題があった際にログの分析をするなどの点で有効です。

# /usr/sbin/apachectl stop
# /usr/sbin/apachectl start

 これでApacheが再起動され、設定が反映されました。


トップ >>  WEB