■
自サーバでCGI
Webサーバの設定ファイル/etc/httpd/conf/httpd.conf
を編集する。
まず、
#AddHandler cgi-script .cgi
のコメントアウトを外す。これでWebサーバ上でCGIが使用可能になる。
安全のため、CGIが使用可能なディレクトリを制限する。
...
の後くらいに
Options Includes FollowSymLinks MultiViews ExecCGI
AllowOverride None
Order allow,deny
Allow from all
を追加。これで/home/httpd/vote
ディレクトリ以下でCGIが使用可能になる。
他のディレクトリでも使用可能にするにはOptionsでExecCGI
を指定すればよい。
31さん提供のCGIを利用するときにつまづいた所
1.FTPでCGI用ファイルを転送するときにバイナリモード転送してしまうとその後上手く動かない
VineLinuxで使えるFTPクライアントのlftp
はデフォルトがバイナリモードなので、
アスキーモードを指定しないといけない。
> get -aあるいは> mget -aのように-a
オプションをつけるとアスキーモードでの転送ができる。
2.perlのパスが違う
31さん提供のCGI用ファイルにはperlのパスが/usr/local/bin/perl
となっているが、
VineLinuxでは/usr/bin/perl
である(# which perl
で確認できる)ため、
全ての.cgiファイルの先頭に書かれているパスを
#!/usr/local/bin/perl
から
#!/usr/bin/perl
に直す必要がある。