В этом руководстве мы рассмотрим процесс установки AWStats на сервер Ubuntu 18.04 с использованием веб-сервера Apache. AWStats (Advanced Web Statistics) — это бесплатная система веб-аналитики с открытым исходным кодом, написанная на Perl. Веб-мастера применяют инструменты веб-аналитики для отслеживания количества посетителей за день, неделю или месяц, а также для получения информации о том, какими браузерами они пользуются и других данных. Это ценный инструмент, помогающий в улучшении и развитии сайтов.
Содержание статьи
Характеристики AWStats
- Он способен создавать пользовательскую статистику на основе серверных логов. Совместим с веб-, стриминговыми, FTP — и почтовыми серверами.
- Он способен отображать число визитов, количество уникальных пользователей и длительность посещений.
- Предоставляет данные о пользователях, включая операционную систему, тип браузера, IP-адрес, разрешение экрана, поисковую систему и ключевые фразы или слова, с помощью которых они нашли ваш сайт.
- Функционирует через командную строку и в режиме CGI.
Для просмотра полного списка возможностей посетите официальный сайт AWStats.
Инструкция по установке AWStats на Ubuntu 18.04 с использованием Apache
Для начала необходимо установить веб-сервер Apache. Для этого выполните команду, чтобы установить Apache из стандартного репозитория Ubuntu.
sudo apt install apache2
После этого установите AWStats. Для получения данных GeoIP требуются два пакета Perl.
sudo apt install awstats libgeo-ip-perl libgeo-ipfree-perl
AWStats способен собирать статистику из лог-файлов Apache. Рекомендуется настраивать отдельные лог-файлы для каждого виртуального хоста Apache.
Конфигурация виртуального хоста в Apache
Внесите изменения в файл виртуального хоста Apache.
sudo nano /etc/apache2/sites-available/example.com.conf
Для начала необходимо активировать ведение журналов в вашем виртуальном хосте, добавив следующие строки в соответствующий тег.
ErrorLog $/exmaple.com_custom.log ЗаписьЛога $/example.com_access.log combined
После этого вставьте указанные строки в конец документа перед закрывающим тегом..
Alias /awstatsclasses "/usr/share/awstats/lib/" Alias /awstats-icon/ "/usr/share/awstats/icon/" Alias /awstatscss "/usr/share/doc/awstats/examples/css" ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ ScriptAlias /awstats/ /usr/lib/cgi-bin/ Options +ExecCGI - MultiViews +SymLinksIfOwnerMatch
Сохраните файл и закройте его. Затем выполните следующую команду для активации модуля CGI и перезапустите Apache, чтобы изменения начали действовать.
sudo a2enmod cgi sudo systemctl restart apache2
Веб-интерфейс AWStats можно будет найти по адресу example.com/cgi-bin/awstats. pl, но для его корректной работы необходимо выполнить несколько дополнительных настроек.

Настройка AWStats подразумевает процесс конфигурации этого инструмента для анализа веб-трафика.
Главный конфигурационный файл расположен по адресу /etc/awstats/awstats.conf.Чтобы ваши изменения не были потеряны при обновлении пакета awstats, мы создаем его копию в новом файле.
sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.exmaple.com.conf
После этого внесите изменения в созданный файл.
sudo nano /etc/awstats/awstats.example.com.conf
В начале вам необходимо установить значение LogFile на имя файла, которое применяет ваш виртуальный хост Apache.
LogFile="example.com_access.log"
Затем обнаружьте следующую строку.
LogFormat=4
Так как мы применяли комбинированный формат журналирования на виртуальном хосте Apache, необходимо установить значение равным 1.
LogFormat=1
Далее внесите ваше доменное имя в поле SiteDomain. Если ваш сайт работает с подсайтом, например blog. example.com, укажите blog. example.com в параметре SiteDomain.
SiteDomain="blog. example.com"
Кроме того, укажите ваше доменное имя в параметре HostAliases.
HostAliases="blog. example.com localhost 127.0.0.1"
Сохраните файл и закройте его. Затем необходимо предоставить пользователю www-data доступ на чтение журналов Apache с помощью следующей команды.
sudo setfacl - R - m "u:www-data:rx" /var/log/apache2/
Теперь доступен веб-интерфейс AWStats (example.com/cgi-bin/awstats. pl).

Крон-задача AWStats, находящаяся в файле /etc/cron. d/awstats, по умолчанию обновляет статистику с интервалом в 10 минут. Данные AWStats сохраняются в каталоге /var/lib/awstats/.
Запрет доступа к веб-интерфейсу AWStats
По умолчанию веб-интерфейс AWStats открыт для общего доступа. Для ограничения доступа можно активировать базовую аутентификацию с паролем через веб-сервер Apache. Для этого выполните следующую команду, чтобы задать пароль для пользователя admin. Пароли и имена пользователей хранятся в файле /etc/apache2/htpasswd.
sudo htpasswd - c /etc/apache2/htpasswd admin
Далее необходимо внести изменения в файл виртуального хоста Apache.
sudo nano /etc/apache2/sites-available/example.com.conf
Пожалуйста, вставьте указанные строки.


