Установка Awstats на CentOS и связка с ISPManager

Имеем Centos 5.4, ISPManager Pro, нужно установить awstats.
Тема довольно популярна, и разжевана неоднократно. Однако полного и пошагового руководства к действию нет. Поэтому решил записать все от начала и до конца, поскольку довольно часто приходится ставить, однако не так часто, чтобы помнить это наизусть.


1. Для начала — в ISPManager по умолчанию установлен анализатором логов webalizer. Первым делом идем в панели и в пункте возможности удаляем его 🙂

2. Пока происходит удаление пакета, идем на AWStats Download Page , скачиваем пакет

# cd ~
# mkdir awstats
# cd awstats
# wget http://sourceforge.net/projects/awstats/files/AWStats/6.95/awstats-6.95-1.noarch.rpm/download

При попытке установить этот пакет может появиться ошибка:

# rpm -ivh awstats-6.95-1.noarch.rpm
ошибка: Неудовлетворенные зависимости:
perl(LWP::UserAgent) нужен для awstats-6.95-1.noarch

Не теряемся, делаем так :
yum install perl perl-libwww-perl.noarch
и повторяем предыдущую команду.
Пакет установился, обновляем кеш ISPManager и перезапускаем его:

# /usr/local/ispmgr/sbin/pkgctl cache
# killall ispmgr

Смотрим в возможности панели — там должен появиться awstat. 🙂 Включаем awstats.

3. Далее — небольшая «магия» 🙂
3.1. Идем в доменные имена в панели. выбираем любой домен — нажимаем кнопочку «ротация логов WWW домена» выбираем в качестве анализатора логов awstats и период сбора статистики(каждый час). Я обычно еще ставлю галку «применить для всех доменов». Жмем ОК и ждем. При этом создаются логи конфиги анализатора, для выбранного(или для всех) домена. Все конфиги можно смотреть и исправлять в папке /etc/awstats

3.2. Редактируем /etc/httpd/conf.d/awstats.conf. убираем первые 4 строчки и пишем вместо них вот эти:


Alias /awstatsclasses /usr/local/awstats/wwwroot/classes
Alias /awstatscss /usr/local/awstats/wwwroot/css
Alias /awstatsicons /usr/local/awstats/wwwroot/icon
ScriptAlias /awstats/ /usr/local/awstats/wwwroot/cgi-bin/

Финалом | апофеозом 🙂 всех манипуляций является перезапуск апачи:


# service httpd restart

Смотрим на неутешительную статистику так. Убедившись, что этот блог никто, кроме меня, не читает, идем варить кофе 🙂

P.S. Случается, что иногда в конфиге апачи запрещено выполнение перл — скриптов. В таком случае вы будете наблюдать 500 ошибку — Internal Server Error. Для избавления от нее нужно в файле
/etc/httpd/httpd.conf найти строку

#AddHandler cgi-script .cgi

и заменить ее на

AddHandler cgi-script .cgi .pl

Если же вы не хотите использовать перл скрипты нигде, кроме этой статистики, то исправляйте файл /etc/httpd/conf.d/awstats.conf.

В нем нужно в

<Directory /usr/local/awstats/wwwroot/>
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>

Добавить

Options ExecCGI
AddHandler cgi-script .pl

Чтобы вышло как то так:

<Directory /usr/local/awstats/wwwroot/>
Options ExecCGI
AddHandler cgi-script .pl
AllowOverride None
Order allow,deny
Allow from all
</Directory>

Еще добавлю, что awstats можно «научить» считать отдельно закачки файлов (например, mp3), и смотреть в логи nginx, что в некоторых случаях гораздо правильнее.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *