- æ¥æï¼ 2006/04/25 19:59
- ååï¼ house
- 参照: http://www.shiawase-home.com/
- ①不明点・障害内容:(情報)
②ログの有無 : --- (有:その内容): ③Distribution :CENTOS4.3 Version: ④Service Name : Version: ⑤ネットワーク構成:省略
いつもお世話になっております。
awstatsでリアルドメインとバーチャルドメインの2つのログ記録が成功したので、 その時の設定を記載させて頂きます。
ただし、私のサイトではawstatsでは 他のサイトも参考にさせて頂いているので awstatsの設定は、ダイレクトに行っています。 こちらのサイトでは /usr/local/awstats/tools/awstats_configure.pl を実行して設定していますので、そこが異なります。 解決策をご存知でしたら、追加コメントを頂けたら幸いです。
*****************:
基本的な考え方
設定ファイルを2つ作成 データ集計も2回行う 集計ページも2つ作成する
*****************
前提条件
1.リアルドメイン・バーチャルドメインにて実際に運用している。
例)リアルドメイン :testdomain1.com バーチャルドメイン:testdomain2.com
2.バーチャルドメインの設定は /etc/httpd/conf/httpd.conf ではなく、 /etc/httpd/conf.d/virtualhost.conf にて行っている。 この中で、リアルドメイン、バーチャルドメインのログパスを指定している。 例) vi /etc/httpd/conf.d/virtualhost.conf
NameVirtualHost *:80 <VirtualHost *:80> ServerName www.testdomain1.com DocumentRoot /var/www/html/testdomain1 ErrorLog logs/testdomain1_error_log transferLog logs/testdomain1_access_log </VirtualHost> <VirtualHost *:80> ServerName www.testdomain2.com DocumentRoot /var/www/html/testdomain2 ErrorLog logs/testdomain2_error_log transferLog logs/testdomain2_access_log </VirtualHost>
私の場合、awstatsの設定ファイルを2つ作成し設定を行いました。 こちらのサイトでは/usr/local/awstats/tools/awstats_configure.pl の実行なので、ここの部分はちょっと分かりません。 追加情報があったらお願いします。 私の場合は、以下のようにしました。
1つのドメインで設定するときと異なる部分のみ記載します。
cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.testdomain1.com.conf cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.testdomain2.com.conf
vi /etc/awstats/awstats.testdomain1.com.conf
SiteDomain="testdomain1.com" (リアルドメイン) LogFile="/etc/httpd/logs/testdomain1_access_log" (リアルドメインのログパスを指定)
vi /etc/awstats/awstats.testdomain2.com.conf
SiteDomain="testdomain2.com" (バーチャルドメイン) LogFile="/etc/httpd/logs/testdomain1_access_log" (バーチャルドメインのログパスを指定)
私の場合、最初の初期化のプログラムは他のサイトを利用させて頂きました。 こちらのサイトのように行っている場合、 恐らく以下のようでうまくいくと思います。 実際には以下のプログラムで試していないので、間違っていたらすみません。
vi awstats.testdomain1.sh
#!/bin/bash /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=testdomain1.com
vi awstats.testdomain2.sh
#!/bin/bash /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=testdomain2.com
chmod 700 awstats.testdomain1.sh chmod 700 awstats.testdomain2.sh
初期化:ログの集計
./awstats.testdomain1.sh ./awstats.testdomain2.sh
集計したサイトの確認
http://サーバのアドレス/awstats/awstats.pl?config=testdomain1.com http://サーバのアドレス/awstats/awstats.pl?config=testdomain2.com
crontab -e には
00 00 * * * /root/awstats.testdomain1.sh 00 20 * * * /root/awstats.testdomain2.sh の2つを登録します。
私のサイトでは、HTML化しています。 また、文字コードは元々EUC-JPにしていますので、 ログデータの変換等を行っていませんので、 分散化するシェルスクリプトやログデータの変換については 分かりません。
しかし、上記と同様の考え方で出来るものと思われます。
是非とも追加情報をお願い申し上げます。
|