![]() |
LINUX |
wwwstatのインストール
*Apacheのaccess_logの解析をします
*wwwstat-2.0をソースからインストールし、設定します
*httpdが先に起動している必要があります
**以降はコメントです
*ファイルの取得、削除は省略します
*エディタ、ファイラーの操作は省略します
*説明文 (英文) を読みましょう
*Enterキーを省略します
*ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
*設定ファイルで "#" で始まる行はコメントとして解釈されます
関連サイト| :wwwstat-2.0.tar.gz | (http://ftp.ics.uci.edu/pub/websoft/wwwstat/) |
| :patch-2.01.txt |
参照ファイル
インストール環境| :OS | CentOS 4.4 |
| :selinux | disabled or permissive |
| :インストール先 | /usr/local/bin/ |
| :作業 | /home/sola/update |
| :言語 | LANG=en_US.UTF-8 |
| :ユーザー | rootで実行 |
*メンテナンスの場合は一般ユーザから行います
wwwstat-2.01
ファイルの展開・コピー*patchファイルは、[ページに名前を付けて保存]を選択し、[Text File]で保存します。
*../は1つ上のディレクトリを指します (この場合/home/sola/update)
# cd /home/sola/update # tar zxvf wwwstat-2.0.tar.gz # chown -R root:root wwwstat-2.0 # cd wwwstat-2.0 # patch < ../patch-2.01.txt
*Makefileの修正
PERLBIN=/usr/bin/perl
# vi Makefile
# make all # cp wwwstat.1 /usr/local/man/man1 # cp wwwstat wwwstat.rc domains.pl /usr/local/bin
*必要ならば下記ファイルをコピーします
# cp monthly oldlog2new splitlog wwwerrs /usr/local/bin
wwwstatを修正します:/usr/local/bin/wwwstat (root root 755)
*DefaultLogはwwwstat.html作成スクリプトに合わせるために変更しています
*ApacheでdnsLookupをしないので、wwwstatで逆引きをします
$DirectoryIndex = 'index(.(html?|cgi|php))?'; $DefaultLog = '/var/log/httpd/access_log.tmp'; $AppendToLocalhost = '.528p.com';
$OthersFullAddress = 1; $ShowUnresolved = 1;
$LookupDNS = 1;
wwwstat.html作成スクリプト:/usr/local/bin/ws-html.sh (root root 755)
*apacheのログはローテーションをしているため、定期的に新しいログファイルが作られ
*ます wwwstat実行時に旧ログファイルとの空白を避けるため、旧ログファイルと新ログ
*ファイルをバインドしてwwwstat用のログファイルを作ります ブラウザで開けるように
*ユーザ・オーナー・パーミッションを変更しておきます
#!/bin/bash # logdir='/var/log/httpd' wshtml='/home/www/myhome/wwwstat.html' # rm -f $logdir/access_log.tmp cat $logdir/access_log.1 $logdir/access_log > \ $logdir/access_log.tmp 2>/dev/null /usr/local/bin/wwwstat > $wshtml chown apache:apache $wshtml chmod g-w,o-rw $wshtml exit
cronでの定期的実行*定期的にスクリプトを実行するように/etc/cron.dにファイルを作ります
*例では、毎日0時1分にroot権限でws-html.shを実行します
:/etc/cron.d/wwwstat (root root 644)
1 0 * * * root /usr/local/bin/ws-html.sh
*crondを再起動します
# service crond restart
アクセス制限*apacheの<File>コンテナ指示子でアクセス制限をかけます
<Directory "/home/www/myhome">
Options MultiViews SymLinksifOwnerMatch IncludesNoExec
AllowOverride None
Order deny,allow
Allow from all
<File wwwstat.html>
Order deny,allow
Deny from all
Allow from 192.168.0.0/255.255.255.0
</File>
</Directory>
dns resolvingのエラーメッセージ*dnsで大量のlame server resolvingメッセージがでます
*logcheckでメールされないようにignoreします
*/usr/local/etc/logcheck.ignoreに追加
named.*lame server resolving
![]() |
Copyright(c) 528p.com All Rights Reserved. |

