Как установить AWStats на Fedora 28

AWStats - полезный инструмент для анализа веб-трафика. К его HTML-интерфейсу можно получить доступ через браузер, что позволяет легко понять, кто просматривает ваш сайт. Из этого туториала вы узнаете, как установить, настроить и защитить AWStats для веб-сервера Nginx в Fedora 28.

Если вы еще не установили Nginx, сделайте это сейчас:

sudo dnf install nginx
sudo systemctl enable --now nginx

Установка AWStats и инструментов

Во-первых, вам нужно установить несколько вещей. К счастью, это очень просто, так как все необходимое вам программное обеспечение находится в репозиториях Fedora:

sudo dnf install awstats httpd-tools php-fpm

httpd-toolsэто пакет, содержащий некоторые инструменты, которые нам понадобятся, такие как htpasswd. Он был разработан для использования с Apache, но большинство инструментов также работают с Nginx. Другой инструмент, php-fpmпозволяет нам запускать PHP-скрипты из Nginx.

Нам нужно включить php-fpmчерез systemctl:

sudo systemctl enable --now php-fpm

Настройка AWStats для вашего сайта

Нам нужно настроить AWStats, прежде чем мы сможем его использовать. Скопируйте файл конфигурации модели, чтобы создать новую конфигурацию для вашего сайта:

sudo cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.<yoursitename>.conf

Теперь отредактируйте этот файл:

sudoedit /etc/awstats/awstats.<yoursitename>.conf

Прокрутите вниз до строки, которая говорит LogFile="/var/log/httpd/access_log". Поскольку мы используем Nginx вместо Apache, нам нужно это изменить. Измените это на LogFile="/var/log/nginx/access.log".

Затем прокрутите вниз до самой строки, которая говорит DirIcons="/awstatsicons". Если вы не можете найти его, введите /DirIcons, затем нажмите, ENTERчтобы перейти к нему. Измените эту строку на DirIcons="../icon".

Наконец, AWStats необходимо знать, какой веб-сайт он анализирует. Таким образом, он может сообщать о том, какие пользователи приходят с внешних сайтов. Два соответствующих варианта конфигурации здесь SiteDomainи HostAliases. SiteDomainбудет просто доменным именем сайта; и HostAliasesбудет список любых других доменных имен, которые могут быть использованы (например, если ваш сайт www.example.com, вы можете поместить example.comздесь, если это тот же сайт).

Все параметры конфигурации описаны в файле конфигурации. Если вы хотите точно знать, что делает опция, или если вы хотите увидеть все опции, которые предлагает AWStats, просто прочитайте комментарии в этом файле.

Настройка разрешений

Настоятельно рекомендуется не запускать AWStats от имени пользователя root. Мы запустим AWStats под nginxпользователем, который уже был установлен во время установки Nginx.

Для этого нам нужно сделать nginxвладельца каталога, в котором AWStats хранит свою базу данных ( /var/lib/awstats):

sudo chown -R nginx /var/lib/awstats

Запустите AWStats в первый раз

На более позднем этапе мы настроим AWStats для запуска при ротации журналов сервера. Однако в первый раз лучше всего запускать его вручную. Сделайте это с помощью следующей команды:

sudo -u nginx /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=<yoursitename>

Примечание . -u nginxЧасть указывает sudoзапускать команду от имени nginxпользователя, а не от имени пользователя root.

Вывод будет похож на следующее:

Create/Update database for config "/etc/awstats/awstats.<yoursitename>.conf" by AWStats version 7.7 (build 20180105)
From data in log file "/var/log/nginx/access.log"...
Phase 1: First bypass old records, searching new record...
Direct access after last parsed record (after line 0)
Jumped lines in file: 0
 Found 0 already parsed records.
Parsed lines in file: 0
 Found 0 dropped records,
 Found 0 comments,
 Found 0 blank records,
 Found 0 corrupted records,
 Found 0 old records,
 Found 0 new qualified records.

Настройка Nginx для просмотра AWStats онлайн

Далее мы настроим Nginx, чтобы мы могли просматривать статистику нашего сайта с самого сайта, а не через интерфейс командной строки. Отредактируйте ваш основной файл конфигурации Nginx:

sudoedit /etc/nginx/nginx.conf

Здесь мы добавим папку, которая будет содержать раздел AWStats на сайте. В этом уроке мы назовем это webstats, но вы можете называть это как хотите.

Найдите раздел файла конфигурации, который говорит server. После строки include /etc/nginx/default.d/*.conf;. Добавить новый раздел:

location /webstats/ {
    alias /usr/share/awstats/wwwroot/;

    location ~ /cgi-bin/(.+\.pl) {
        include fastcgi.conf;
        fastcgi_pass php-fpm;
        fastcgi_split_path_info ^/webstats/(.+\.pl)(.*)$;
        fastcgi_param SCRIPT_FILENAME /usr/share/awstats/tools/nginx/awstats-fcgi.php;
        fastcgi_param X_SCRIPT_FILENAME /usr/share/awstats/wwwroot/$fastcgi_script_name;
        fastcgi_param X_SCRIPT_NAME $fastcgi_script_name;
    }
}

В этом разделе Nginx сообщает, что когда мы заходим в webstatsкаталог в нашем браузере, он должен обслуживать веб-корень AWStats, а если мы запрашиваем скрипт в cgi-binкаталоге, он должен его запускать.

После редактирования файла конфигурации нам нужно перезапустить Nginx:

sudo systemctl restart nginx

Теперь откройте ваш браузер и перейдите к <your website>/webstats/cgi-bin/awstats.pl?config=<yoursitename>. Это домашняя страница AWStats для вашего сайта. Это будет выглядеть примерно так:

Как установить AWStats на Fedora 28

Убедитесь, что страница загружается правильно, и вы видите логотип AWStats в правом верхнем углу. Если страница не загружается или отсутствует логотип, возможно, на предыдущем шаге что-то неправильно настроено - вернитесь назад и убедитесь, что все пути указаны правильно.

Обеспечение безопасности AWStats

Неспособность защитить вашу страницу статистики может привести к плохим вещам, таким как спам реферера . Кроме того, вы не хотите, чтобы ваши подробные аналитические данные были доступны всему Интернету.

Мы будем использовать Nginx, чтобы разместить пароль на странице статистики. Откройте /etc/nginx/nginx.confснова, вернитесь к добавленному разделу и добавьте следующие строки под location /webstats/ {:

auth_basic "Username and password required to access AWStats";
auth_basic_user_file /etc/nginx/.htpasswd;

Теперь нам нужно создать этот .htpasswdфайл. Выйдите из файла конфигурации и выполните следующую команду:

sudo htpasswd -c /etc/nginx/.htpasswd <username>

Ваше имя пользователя может быть в основном любым, но оно не должно содержать пробелов и должно быть уникальным, а не что-то, что легко угадать, как adminили webmaster. При запуске команды вам будет предложено ввести пароль. Введите безопасный пароль, затем подтвердите его.

Перезагрузить Nginx:

sudo systemctl restart nginx

Попробуйте снова получить доступ к AWStats. На этот раз вам будет предложено ввести имя пользователя и пароль. Введите их, и вы будете отправлены на домашнюю страницу AWStats, как и раньше.

Запуск AWStats ежедневно и при ротации логов

Наконец, нам нужна наша статистика для обновления. Мы будем использовать cronдля этого. Это утилита планировщика задач, и она предустановлена ​​в Fedora (и большинстве других дистрибутивов Linux). Мы будем запускать AWStats каждый день в полночь. Отредактируйте /etc/crontabи добавьте следующую строку внизу:

0 0 * * * nginx /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=<yoursitename>

Чтобы избежать потери данных, мы также хотим, чтобы AWStats запускался при ротации журналов. Для этого отредактируйте /etc/logrotate.d/nginx. Над postrotateразделом добавьте следующее:

prerotate
    /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=<yoursitename>
endscript

AWStats теперь полностью настроен и готов к работе.



Leave a Comment

Как установить Matomo Analytics на Fedora 28

Как установить Matomo Analytics на Fedora 28

Используете другую систему? Matomo (ранее Piwik) - это аналитическая платформа с открытым исходным кодом, открытая альтернатива Google Analytics. Источник Matomo размещен o

Как установить форум NodeBB на Fedora 28

Как установить форум NodeBB на Fedora 28

Используете другую систему? NodeBB - это форум на базе Node.js. Он использует веб-сокеты для мгновенного взаимодействия и уведомления в режиме реального времени. Исходный код NodeBB я

Как установить Dolibarr на Fedora 28

Как установить Dolibarr на Fedora 28

Используете другую систему? Dolibarr - это общедоступное планирование ресурсов предприятия (ERP) и управление взаимоотношениями с клиентами (CRM) для бизнеса. Dolibar

Как установить RainLoop Webmail на Fedora 28

Как установить RainLoop Webmail на Fedora 28

Используете другую систему? RainLoop - это простой, современный и быстрый сетевой почтовый клиент. Исходный код RainLoop размещен на GitHub. Это руководство покажет вам, как

Как установить BookStack на Fedora 28

Как установить BookStack на Fedora 28

Используете другую систему? BookStack - это простая, самостоятельная платформа для организации и хранения информации. BookStack является полностью бесплатным и открытым исходным кодом,

Как установить Reader Self 3.5 RSS Reader на Fedora 26 LAMP VPS

Как установить Reader Self 3.5 RSS Reader на Fedora 26 LAMP VPS

Используете другую систему? Reader Self 3.5 - это простая и гибкая, бесплатная программа для чтения RSS с открытым исходным кодом и альтернатива Google Reader. Читатель Sel

Как установить Gitea на Fedora 29

Как установить Gitea на Fedora 29

Используете другую систему? Gitea - это альтернативная система управления версиями с открытым исходным кодом, работающая на Git. Гитея написана на Голанге и является

Как развернуть Ghost v0.11 LTS на Fedora 25

Как развернуть Ghost v0.11 LTS на Fedora 25

Используете другую систему? Ghost - это блог-платформа с открытым исходным кодом, которая завоевывает популярность среди разработчиков и обычных пользователей с 201 года.

Как установить Kanboard на Fedora 29

Как установить Kanboard на Fedora 29

Используете другую систему? Введение Kanboard - это бесплатная программа с открытым исходным кодом для управления проектами, предназначенная для упрощения и визуализации.

Как установить Directus 6.4 CMS на Fedora 26 LAMP VPS

Как установить Directus 6.4 CMS на Fedora 26 LAMP VPS

Используете другую систему? Directus 6.4 CMS - это мощная и гибкая, бесплатная система управления контентом (CMS) с открытым исходным кодом, которая предоставляет разработчикам

Как установить MyBB на Fedora 28

Как установить MyBB на Fedora 28

Используете другую систему? MyBB - это бесплатная и открытая, интуитивно понятная и расширяемая форумная программа. Исходный код MyBB размещен на GitHub. Это руководство будет шо

Как установить Backdrop CMS 1.8.0 на Fedora 26 LAMP VPS

Как установить Backdrop CMS 1.8.0 на Fedora 26 LAMP VPS

Используете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам

Как установить Microweber на Fedora 28

Как установить Microweber на Fedora 28

Используете другую систему? Microweber - это CMS с открытым исходным кодом и онлайн-магазин. Исходный код микропровода размещен на GitHub. Это руководство покажет вам

Как установить Osclass на Fedora 28

Как установить Osclass на Fedora 28

Используете другую систему? Osclass - это проект с открытым исходным кодом, который позволяет легко создавать секретные сайты без каких-либо технических знаний. Его источник

Установите HTMLDoc на Fedora 29

Установите HTMLDoc на Fedora 29

Используете другую систему? HTMLDoc будет динамически анализировать документы Postscript (PDF 1.6) из правильно написанного гипертекста (HTML 3.2). Это позволит вам т

Как установить Cachet на Fedora 28

Как установить Cachet на Fedora 28

Используете другую систему? Cachet - это система страниц с открытым исходным кодом, написанная на PHP. Исходный код Cachet размещен в этом репозитории Github. В этом

Как установить программу чтения RSS Selfoss на VPS-лампе Fedora 26

Как установить программу чтения RSS Selfoss на VPS-лампе Fedora 26

Используете другую систему? Selfoss RSS Reader - это бесплатная многоцелевая веб-программа с открытым исходным кодом для самостоятельного размещения, прямой эфир, гибриды, лента новостей (RSS / Atom).

Как установить Paste 2.1 на Fedora 26 LAMP VPS

Как установить Paste 2.1 на Fedora 26 LAMP VPS

Используете другую систему? Paste 2.1 - это простое и гибкое бесплатное приложение с открытым исходным кодом для хранения кода, текста и многого другого. Это было изначально

Как установить PyroCMS на Fedora 28

Как установить PyroCMS на Fedora 28

Используете другую систему? PyroCMS - это CMS с открытым исходным кодом, написанная на PHP. Исходный код PyroCMS размещен на GitHub. В этом руководстве хорошо прогуляться по всему

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше