RedHat Linux 7.2 CGI

FTP、TELNETを使用できるようにする。
1.ファイアウォール=all(解除)
2./etc/xinetd.d/wu-ftpd 又はsvftpdやproftpd の中の disable=yes を no にする
3./etc/xinetd.d/telnet の中の disable=yes を no にする

RedHat Linux 8.0 で CGI を動かそうとしたが、動かないのでApache を最新に入れ替えたが、 perl プログラム の先頭の #!/usr/bin/perl に何かオプションを付けないと動かない。

         #!/usr/bin/pel -w   のように

良く分からないので、RedHat Linux 7.2 をインストールしたが、今度はvar/www/cgi-bin では動くがユーザの public_html/cgi-bin で、動かすことができなかった。やはりApache は、入れ直さないとだめってことか?

て訳で、Apache をソースから入れ直すことにする。
Apacheをダウンロードし、作業用のディレクトリ /usr/src にコピーし、インストールする。
# tar xvfz apache_<varsion>.tar.gz 《圧縮ファイルの解凍》
# cd apache_<varsion>/ 《展開されたディレクトリに移動》
# sh ./configure 《モジュールを追加する必要がない場合は、設定を行うshellスクリプトを実行》
# make 《設定が完了したらコンパイルを行う》
# su 《rootとしてログイン》
# make install 《最後にインストール》

サーバの起動と停止。
# /usr/local/apache/bin/apachectl start 《起動》
# /usr/local/apache/bin/apachectl stop 《停止》
# /usr/local/apache/bin/apachectl restart 《再起動》

Apache起動の確認
 ブラウザを立ち上げて、URLにlocalhostか、自分のサーバのIPアドレスを入力し、Apacheのテスト画面が表示されればOK。

起動スクリプトの作成
サーバを再起動させるたびにApacheを手動で起動させるのは面倒なので、Apacheサーバの起動スクリプトを/etc/rc.d/rc.httpdのファイル名で作成する。
# vi /etc/rc.d/rc.httpd
#! /bin/sh
/usr/local/apache/bin/apachectl start

 作成した起動スクリプトに実行権をつける。
# chmod 755 /etc/rc.d/rc.httpd

 次に、/etc/rc.d/rc.localへ、rc.httpdを起動するスクリプトを追加。
if [ -f /etc/rc.d/rc.httpd ]; then /etc/rc.d/rc.httpd; fi;






CGI と SSI の 設定

設定ファイルは /usr/local/apache2/conf/httpd.conf で行う。
以下のOptions に ExecCGI と Includes を追加する。
<Directory />
Options FollowSymLinks ExecCGI Includes
AllowOverride None
</Directory>

ユーザーのホームディレクトリで CGI を動す場合、公開ディレクトリを public_html とするなら、 httpd.conf に,以下の記述のあることを確認する。
UserDir public_html

public_html/cgi-bin で CGI を実行するためには httpd.conf に次の記述が必要。
<Directory /home/*/public_html/cgi-bin>
Options ExecCGI
</Directory>

CGI を動かすためにはまず, 下記の記述があることを確認し、 もしも "AddHandler...." の前に "#" 印があれば消しておく。
# To use CGI scripts:
AddHandler cgi-script .cgi

SSI や .pl の 拡張子を使用するなら pl も追加する。(スペース空けて.pl と追加してもOK)
# To use CGI scripts:
AddHandler cgi-script .cgi
AddHandler cgi-script .pl

SSI を利用するためためには, httpd.conf に次の記述があることを確認し. 無ければ書き足す。
もちろん"#" を消して設定を有効にする。
#AddType text/html .shtml
#AddHandler server-parsed .shtml