RedHat Linux 7.1J にはデフォルトで、apache-1.3.19 がインストールされていますので、それをカスタマイズすれば十分でしょう。
1.ディレクトリ属性の変更
HTMLファイルは、RedHat Linux 7.1J では、/var/www/html/ に格納されます。ですからFTPソフトでそのディレクトリにホームページのファイルを全部アップロードすればそれで終わりなのです。ところが、実際putしようとするとpermission deniedで蹴られてしまいます。そこで、/var/www/ 以下の許可属性(所有者)を変更しなくてはなりません。
# cd /var/www/ # chown -Rf masao * # chgrp -Rf masao *
もちろん、masao の部分は適切な user名を入れてください。これでputができるようになります。それではブラウザから http://linux.fujie.org/ とホストネームを入力してみてください。これで index.html のテストページが出れば成功です。また、ホームディレクトリにpublic_htmlというディレクトリを置き、そこにhtmlファイルを置くと、fujieというユーザーがいたとして http://www.fujie.org/~fujie/ でその個人のホームページが見られます。apache-1.3.6 からデフォルトでは、access.conf と srm.conf は使わなくなりました。すべて httpd.conf (RHL なら /etc/httpd/conf/httpd.conf) に記載します。参考に、僕のhttpd.confの書き直した一部を記載します。
# cd /etc/httpd/conf/ # vi httpd.conf ----- ServerAdmin masao@fujie.jp ----- <Directory "/var/www/html"> Options Includes Indexes FollowSymLinks MultiViews AllowOverride None XBitHack on </Directory> ----- HostnameLookups On ----- IndexIgnore */* * -----
XBitHack on となっているので、SSIがあるファイルのパーミッションは 755 にしなくてなりません。
2.wwwcountのインストール
アクセスカウンタのWWWCOUNTをインストールしてみましょう。まず、最新のバージョンのwwwcount.2.5.tar.gzをダウンロードして、/usr/local/src/ に置きます。そして型のごとく展開します。
# cd /usr/local/src/ # tar zxvf wwwcount2.5.tar.gz -----
そしてコンパイルします。
# cd /usr/src/wwwcount2.5/ # ./Count-config -----
幾つかの質問に答えます。cgi directory と document directory以外はほとんどデフォルトでいいでしょう。次に、configureします。
# ./configure
そして、make
# make all
さらに質問に答えてconfファイルの作成。そして、インストール
# ./Gen-conf ----- # ./Count-install -----
質問には次のように答えました。
*Do you know the user and group id of httpd' child process [y|n]:? n
他は状況に合わせて答えて下さい。これで、count.cfgも自動的に作られるはずです。つぎにカウンターデータの初期化を行います。カウンターデータは/usr/local/etc/Counter/data/ に格納されます。そこで、次のように入力します(例)。 またパーミッションも変更します。
# cd /usr/local/etc/Counter/data/ # echo 1 > x.dat # chown nobody x.dat # chmod 666 x.dat # cd /var/www/cgi-bin/ # chmod 755 Count.cgi
そして最後にアクセスカウンターを表示したいhtmlファイルに次の1行を加えればおしまいです。
<img src=/cgi-bin/Count.cgi?df=x.dat>
3.SSIカウンターの設定
SSI(Server Side Include)を利用したアクセスカウンターを作ってみましょう。SSIは応用範囲が広いため、アクセスカウンターに限らず、Perlを利用していろいろなプログラムを利用することができます。ここでは一番簡単なアクセスカウンターを作ってみます。
3-1 counter.plを作る
次のような内容のファイルをエディタで作成してください。
#!/usr/bin/perl $datafile = "counter.dat"; open(DATA,"$datafile"); $number = <DATA>; close(DATA); $number = $number +1; open(DATA,">$datafile"); print DATA $number; close(DATA); print $number;
1行目はサーバーによっては、#!/usr/local/bin/perlかも知れません。telnetでサーバーに入って、# which perl で確かめてください。このファイルをcounter.plという名前で保存しhtmlファイルと同じディレクトリにputしてください。
3-2 .htaccessファイルを作る
次のような内容のファイルをエディタで作成してください。
AddType text/x-server-parsed-html .html AddType application/x-httpd-cgi .cgi
最後に必ずリターンを入れてください。このファイルを.htaccessという名前で保存し、htmlファイルと同じディレクトリにputしてください。
3-3 パーミッションの変更
telnet でサーバーに入って、
# chmod 755 counter.pl # echo 1 > counter.dat # chmod 666 counter.dat
としてください。ディレクトリは、/var/www/html/(または/home/user/public_html/)です。
3-4 サーバーの設定
あとは、カウンターを表示したいhtmlファイルに次の行を挿入し、そのファイルの permission を 755 にすれば終わりです。
# cd /var/www/html/ # vi index.html <!--#exec cmd="./counter.pl"--> ----- # chmod 755 index.html