[[ Установка awstats на Gentoo Linux ]]

Gentoo

Установка awstats на Gentoo Linux

Установка и настройка awstats в связки с Nginx для Gentoo Linux.

Установка

Установка awstats и необходимых зависимостей:

emerge net-www/awstats

Для определение георгафии ip адрессов необходимо установить 1) USE-флаг geip:

echo net-www/awstats geoip >> /etc/portage/package.use

Если вы использиете USE-флаг vhost то необходимо выполнить:

webapp-config -I -h localhost -d awstats awstats 6.9-r1

где localhost имя вашего виртуального хоста и 6.9-r1 версия awstats.

Перейдите в папку установки awstats 2) и создайте необходимый каталоги:

cd /var/www/localhost/htdocs/awstats
mkdir data

Скопировать конфигурационный файл:

cp /etc/awstats/awstats.model.conf /etc/awstats/default.conf

Отредактируем конфиг:

/etc/awstats/default.conf

DirData="/var/www/localhost/htdocs/awstats/data"
 
Lang="ru"
 
LoadPlugin="decodeutfkeys"

Теперь создадим конфигурационный файл для конкретного сайта (в примере domain.com):

/etc/awstats/awstats.domain.com.conf

Include "/etc/awstats/default.conf"
 
LogFile="/var/log/nginx/access_log"
 
SiteDomain="domain.com"
 
HostAliases="REGEX[.*\.domain\.com$]"

Автоматизация парсинга логов и построения отчётов

Дабы минимизировать работу при добавлении очередного сайта создадим два скрипта управляемые единым конфигом. Первый скрипт для парсинга логов, второй для создания отчётов. Оба скрипта будут подключать файл настроек.

Файл настроек:

/var/www/localhost/htdocs/awstats/stat.config

AWDIR="/var/www/localhost/htdocs/awstats"
 
AWSTATS="/var/www/localhost/cgi-bin/awstats.pl"
 
REPORTS="alldomains allhosts lasthosts unknownip allemails lastemails allemailr lastemailr alllogins lastlogins allrobots lastrobots urldetail urlentry urlexit osdetail browserdetail unknownbrowser unknownos refererse refererpages keyphrases keywords errors404"
 
SITES="enchtex.info"
 
INDEX_PAGE="$AWDIR/data/index.html"

Скрипт парсинга логов:

/var/www/localhost/htdocs/awstats/stat.parse.sh

#!/bin/sh
 
. /var/www/localhost/htdocs/awstats/stat.config
 
for SITE in $SITES; do
    $AWSTATS -config=$SITE
done

Скрипт генерации отчётов:

/var/www/localhost/htdocs/awstats/stat.render.sh

#!/bin/sh
 
. /var/www/localhost/htdocs/awstats/stat.config
 
custom_report() {
    SITE=$1
    REPORT=$2
    $AWSTATS -config=$SITE -output=$REPORT -staticlinks > "$AWDIR/data/awstats.$SITE.$REPORT.html"
}
 
for SITE in $SITES; do
    $AWSTATS -config=$SITE -output -staticlinks > "$AWDIR/data/$SITE.html"
    for REPORT in $REPORTS; do
        custom_report $SITE $REPORT
    done
done
 
rm $INDEX_PAGE
 
for SITE in $SITES; do
    echo "<div><a href=\"$SITE.html\">$SITE</a></div>" >> $INDEX_PAGE
done

Отмечаем файлы как выполняемые:

chmod +x /var/www/localhost/htdocs/awstats/stat.parse.sh
chmod +x /var/www/localhost/htdocs/awstats/stat.render.sh

Для проверки правильности настроек следует выполнить stat.parse.sh и затем stat.render.sh:

/var/www/localhost/htdocs/awstats/stat.parse.sh
/var/www/localhost/htdocs/awstats/stat.render.sh

После выполнения в папке /var/www/localhost/htdocs/awstats/data должны появиться файлы отчётов.

Добавляем автоматическое построение отчётов через крон раз в час:

/etc/cron.hourly/awstats

#!/bin/bash
 
/var/www/localhost/htdocs/awstats/stat.parse.sh
/var/www/localhost/htdocs/awstats/stat.render.sh

Делаем файл выполняемым:

chmod +x /etc/cron.hourly/awstats

Статья не завершена

1)
перед установнкой пакета awstats
2)
в примере /var/www/localhost/htdocs/awstats

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
219 +15 = 
 
howto/gentoo/gentoo_install_awstats.txt · Последнее изменение: 2022/08/31 14:53 — 127.0.0.1
Gentoo Linux Gentoo Linux Driven by DokuWiki