AWStats на Ubuntu: установка и настройка
Что такое AWStats
AWStats — это анализатор логов с открытым исходным кодом, который генерирует графические отчёты о веб-трафике, потоковой передаче, FTP и почтовых серверах. Работает как CGI-скрипт или из командной строки. Быстро обрабатывает большие файлы логов за счёт частичных файлов данных и поддерживает форматы логов Apache, IIS и другие.
Краткое определение: AWStats — генератор HTML-отчётов по логам сервера для понимания посетителей, рефералов и ошибок.
Установка пакета AWStats
Пакет AWStats доступен в репозитории Ubuntu. Установите его командой:
sudo apt-get update
sudo apt-get install awstatsДалее нужно включить модуль CGI в Apache:
sudo a2enmod cgiИ перезапустить Apache, чтобы изменения вступили в силу:
sudo /etc/init.d/apache2 restartПримечание: на более новых версиях Ubuntu/Apache перезапуск может выполняться как
sudo systemctl restart apache2Настройка AWStats
Для каждого домена или веб-сайта, для которого вы хотите просматривать статистику, создайте отдельный конфигурационный файл. В примере ниже создаём конфиг для сайта test.com.
Скопируйте шаблон конфигурации и переименуйте файл:
sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.test.com.confОткройте файл для редактирования:
sudo nano /etc/awstats/awstats.test.com.confОбновите следующие параметры в конфиге:
# Путь к лог-файлу Apache (обычно /var/log/apache2/access.log)
LogFile="/var/log/apache2/access.log"
# Домен сайта
SiteDomain="test.com"
HostAliases="www.test.com localhost 127.0.0.1"
# Разрешить обновление статистики из браузера (1 — включено)
AllowToUpdateStatsFromBrowser=1Сохраните и закройте файл.
После изменений соберите начальную базу статистики из текущих логов:
sudo /usr/lib/cgi-bin/awstats.pl -config=test.com -updateВывод команды должен показать процесс обработки и обновления данных, примерно как на снимке ниже.

Конфигурация Apache для AWStats
По умолчанию CGI-скрипты AWStats находятся в каталоге /usr/lib/cgi-bin. Чтобы упростить доступ, можно скопировать содержимое в корневой каталог веб-документов или настроить Alias/ScriptAlias в конфигурации Apache. Пример простого подхода — копирование и правка прав:
sudo cp -r /usr/lib/cgi-bin /var/www/html/
sudo chown -R www-data:www-data /var/www/html/cgi-bin/
sudo chmod -R 755 /var/www/html/cgi-bin/Лучше вариант — добавить конфигурацию в /etc/apache2/conf-available/awstats.conf с использованием ScriptAlias и настроить профиль безопасности. После изменения конфигурации включите её и перезагрузите Apache:
sudo a2enconf awstats
sudo systemctl reload apache2Важно: предпочтительнее настраивать ScriptAlias и ограничивать доступ по IP/аутентификации, чем просто копировать CGI в публичную директорию.
Тестирование AWStats
Откройте в браузере URL:
http://your-server-ip/cgi-bin/awstats.pl?config=test.com
Если всё настроено верно, вы увидите страницу отчёта AWStats с графиками, таблицами и сводной информацией о трафике.

Настройка cron для регулярного обновления
Рекомендуется запускать обновление статистики по расписанию, чтобы база данных AWStats регулярно пополнялась новыми записями из логов. Отредактируйте системный файл crontab или создайте отдельный файл в /etc/cron.d/.
Пример добавления в /etc/crontab (обновление каждые 10 минут):
*/10 * * * * root /usr/lib/cgi-bin/awstats.pl -config=test.com -updateАльтернатива: поместите скрипт в /etc/cron.hourly или используйте systemd timer для более гибкого контроля.
Критерии приёмки
- Страница отчёта доступна по адресу /cgi-bin/awstats.pl?config=<домен>.
- Команда обновления отрабатывает без ошибок и пишет строки в частичный файл данных AWStats.
- Cron регулярно запускает обновление в указанный интервал.
- Права доступа настроены так, чтобы только доверенные пользователи/хосты могли вызывать CGI-скрипт.
Типичные ошибки и их исправление
Проблема: при запуске awstats.pl появляется ошибка «Permission denied». Решение: проверьте права на скрипт и каталоги, запустите от root при первом построении, затем установите права www-data.
Проблема: пустые отчёты или ноль посещений. Решение: убедитесь, что LogFile в конфиге указывает на актуальный лог, формат лога совпадает (Combined/VirtualHost), и что скрипт имеет доступ к файлу.
Проблема: браузер не показывает CGI-страницу. Решение: убедитесь, что модуль cgi включён (a2enmod cgi), что ScriptAlias/AllowOverride настроены, и что Apache перезагружен.
Безопасность и жёсткие настройки
- Ограничьте доступ к CGI-скриптам AWStats по IP или через HTTP-аутентификацию.
- Не давайте права записи на лог-файлы неограниченным пользователям.
- Размещайте CGI вне публичной директории и используйте ScriptAlias для безопасного вызова.
- Регулярно обновляйте пакет AWStats и саму ОС.
Методология и рольовые чеклисты
Роль: системный администратор
- Установить пакет и зависимости.
- Включить CGI и перезагрузить Apache.
- Создать конфиг для каждого домена.
- Проверить запуск awstats.pl вручную.
- Настроить cron/systemd timer.
- Настроить доступ/аутентификацию.
Роль: аналитик
- Проверить корректность парсинга логов (формат логов).
- Убедиться, что отчёты отображают необходимые метрики (визиты, хосты, рефереры).
- Настроить фильтры для бот-трафика.
Когда AWStats не подходит (контрпримеры)
- Нужна реальная-time аналитика с отслеживанием сессий и событий в браузере — лучше использовать решения типа Google Analytics или Matomo (собиратель событий на стороне клиента).
- Требуется масштабируемая аналитика для большого количества серверов с централизованным хранением логов — рассмотрите ELK/Elastic Stack или Grafana Loki.
Короткая памятка (cheat sheet)
- Установка: sudo apt-get install awstats
- Обновление: sudo /usr/lib/cgi-bin/awstats.pl -config=example.com -update
- Cron: /10 * root /usr/lib/cgi-bin/awstats.pl -config=example.com -update
- CGI включить: sudo a2enmod cgi && sudo systemctl restart apache2
Резюме
AWStats — простой и надёжный инструмент для анализа логов веб-сервера. Его легко установить и настроить на Ubuntu, но следует уделить внимание безопасности CGI, корректной настройке путей логов и расписанию обновлений. Для больших или реального времени задач лучше выбирать специализированные системы аналитики.
Важно: если у вас остались вопросы по конкретной конфигурации (виртуальные хосты, нестандартные форматы логов, фильтрация ботов), опишите ваш случай — я помогу адаптировать конфиг.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента