はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/01/16
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 当サイト情報 >> スレッド

このページは表示専用です。新規投稿・レスや最新情報はこちらです。

 (情報)awstatsで バーチャルドメインのログを集計する
日時: 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にしていますので、
ログデータの変換等を行っていませんので、
分散化するシェルスクリプトやログデータの変換については
分かりません。

しかし、上記と同様の考え方で出来るものと思われます。

是非とも追加情報をお願い申し上げます。

■ コンテンツ関連情報

■ その他

ページ先頭へ


Copyright(©)2004-2018 First home server construction. All Right Reserved.