Установка анализатора логов awstats на веб-сервер под управлением Ubuntu Server

Apache2 сохраняет подробнейшую статистику о посетителях сервера в своих логах. Существует не мало средств для анализа логов посещений, но наибольшую популярность, насколько я себе представляю, снискали универсальные инструменты: webalizer и awstats. О настройке последнего далее и поговорим. Awstats написан на Perl и имеется на многих (думаю, что на большинстве) виртуальных хостингах, так что его можно считать чуть ли не традиционным инструментом для анализа логов.

Сразу должен заметить, что рассмотренная ниже конфигурация довольно просто реализуется, но не идеальна в смысле безопасности. Отчёты awstats мы скроем только при помощи нестандартного адреса и никак более, устанавливать пакет будем также в стандартные директории, что небезопасно для ответственных серверов. Однако, если читателям будет интересно, то милости прошу в комментарии: наберётся достаточно вопросов — будет и продолжение статьи.

А пока начнём с установки:
sudo aptitude install awstats

После того, как пакет установлен, переходим к конфигурированию. Первый шаг — создание конфигурационного файла для одного из ваших виртуальных хостов. Скопируем исходные настройки:
sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.example.com.conf

Разумеется, example.com вам нужно заменить на имя вашего домена.

Далее правим конфигурационный файл:
sudo nano /etc/awstats/awstats.example.com.conf

Нас интересуют следующие параметры:
LogFile="/var/www/example.com/access.log" — укажите в кавычках пусть до access.log вашего вирт. хоста;
LogFormat=1 — для подробной статистики;
SiteDomain="example.com" — имя вашего домена;
HostAliases="www.example.com" — альясы (синонимы) вашего домена.

Всё почти готово, осталось научить Apache2 отображать статистику. По умолчанию сконфигурированный Apache2 в своём конфигурационном файле содержит включение файлов из /etc/apache2/conf.d/, поэтому в соответствующей директории создадим файл с параметрами для доступа к awstats: touch /etc/apache2/conf.d/awstats.

Правим файл и добавляем в него следующие директивы:
Alias /awstatsclasses "/usr/share/awstats/lib/"
Alias /awstats-icon/ "/usr/share/awstats/icon/"
Alias /awstatscss "/usr/share/doc/awstats/examples/css"
ScriptAlias /stats/ /usr/lib/cgi-bin/
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch

Настройка завершена. Проанализируем существующие логи:
sudo /usr/lib/cgi-bin/awstats.pl -config=example.com -update

И перезапустим веб-сервер, чтобы он узнал, что показывать посетителю, если в браузере он наберёт example.com/stats/awstats.pl:
sudo apache2ctl restart

Готово. Можно идти по вышеназванному адресу и любоваться результатом. Хотя, конечно же, надо бы научить awstats генерировать отчёты регулярно и автоматически. Нам поможет планировщик cron.

Правим crontab:
sudo nano /etc/crontab

Добавляем строчку (обновляться статистика будет раз в полчаса) и сохраняем файл:
*/30 * * * * root /usr/lib/cgi-bin/awstats.pl -config=example.com -update >/dev/null

Понятно, что если вам понадобится статистика для другого хоста, то процедуру нужно просто повторить.

Re: Установка awstats на Ubuntu

Установил awstats по Вашей статье, всё ок. Вот только запускать обработку раз в полчаса не часто ли? Не создаёт ли это большой нагрузки на сервер?

Re: Установка awstats на Ubuntu

Зависит от сервера конечно же. А главным образом от того, насколько оперативная статистика вам нужна: скажем, если вы ей не интересуетесь чаще, чем раз в сутки, то и запускать скрипт лучше один раз в ночь.

аватар: dnbattack

Отличная статья, правда, всё

Отличная статья, правда, всё заработало...
теперь подумаю, как бы делать всё это одним кликом или скриптом ....
да и вообще надо на web сервере логи привести в порядок )...

Re: Установка анализатора логов awstats

Спасибо, все поставилось, но статистика не обновляется. В чем может быть проболема?
Create/Update database for config "/etc/awstats/awstats.example.com.conf" by AWStats version 6.7 (build 1.892)
From data in log file "/var/www/example.com/log/access.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Jumped lines in file: 0
Parsed lines in file: 0
Found 0 dropped records,
Found 0 corrupted records,
Found 0 old records,
Found 0 new qualified records.

Re: Установка анализатора логов awstats на веб-сервер под ...

Спасибо, в файл выводит а в web статистика по нулям, в чем проблема может быть?

Re: Установка анализатора логов awstats на веб-сервер под ...

а как установить пароль чтобы не все смотрели статистику?

Re: Установка анализатора логов awstats на веб-сервер под ...

если на базе apache2, то Вам поможет http://httpd.apache.org/docs/2.0/howto/auth.html вот эта документация.

автору спасибо за статью.

Отправить комментарий

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Подробнее о форматировании

RSS-материал