Apache で CGI/Perl の設定
Perl の設定について書いて行きます。
Vine Linux + Apache の場合、特別にソフトをインストール・設定する必要はありません。
しかし、Windows の場合は、Perl を動作させるソウトウェアが必要です。
Windows で Perl を動かす方法は、当サイト内の「 Windows で自宅サーバ > サーバサイドスクリプトを実行させる( CGI・Perl 編 ) 」で行っています。
ページ内コンテンツ一覧
先ずは前項の確認と、実際に設定を行っている所を明確にして行きましょう。
ここからは Apache での設定例です!
Apache の設定は全て毎度おなじみの Apache 設定ファイルである httpd.conf を編集して行います。
「 http://my-dmain.com/ 」にアクセスがあった場合、Apache が返すディレクトリの設定は、
DocumentRoot /home/httpd/html
で設定されています。
さて、本題です。CGI が動作するディレクトリは httpd.conf 中の以下の部分で設定されています。
# CGI の動作許可ディレクトリを設定します。 # 実際のURLは http://my-dmain.com/cgi-bin/* になります。 # 仮想エイリアス、物理エイリアス共に最初と最後はスラッシュ「 / 」で閉じます。 # ScriptAlias /任意の仮想エイリアス/ /*.cgiを設置する物理エイリアス/ ScriptAlias /cgi-bin/ /home/httpd/cgi-bin/ # 下記の Directory タグ中で ディレクトリ毎の設定を行っています。 # /home/httpd/cgi-bin 以下のディレクトリでここで設定した内容が反映されます。 # 物理エイリアスのみを指定します。最後のスラッシュは不要です。 # <Directory /ScriptAliasで指定した物理エイリアス> <Directory /home/httpd/cgi-bin> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory>
以上の設定で、/home/httpd/cgi-bin 以下のディレクトリで CGI が動作する様になります。
次に、*.cgi ファイルの1行目、Perl へのパスを書きます。
これは、perl のインストールパスの関係で環境によって若干変化してきます。
Vine Linux の場合は、「 #!/usr/bin/perl 」になります。
これは、/usr/bin ディレクトリ内に perl を動作させるモノがインストールされている事を示しています。
これで、「動かない」という方は、perl へのパスに「 -- 」を付けて、「 #!/usr/bin/perl -- 」としてみて下さい。
理由はちょっと分かりませんが、動くかもしれません。
一般的な「 CGI を動かす 」という設定は、これで完了です。
「この通りやっても動かないよ!」という方は、メール か 掲示板 でお知らせ頂ければ幸いです。