Изучение 26 методов анализа больших данных: часть 1
Изучение 26 методов анализа больших данных: часть 1
AWStats - полезный инструмент для анализа веб-трафика. К его HTML-интерфейсу можно получить доступ через браузер, что позволяет легко понять, кто просматривает ваш сайт. Из этого туториала вы узнаете, как установить, настроить и защитить AWStats для веб-сервера Nginx в Fedora 28.
Если вы еще не установили Nginx, сделайте это сейчас:
sudo dnf install nginx
sudo systemctl enable --now nginx
Во-первых, вам нужно установить несколько вещей. К счастью, это очень просто, так как все необходимое вам программное обеспечение находится в репозиториях 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, прежде чем мы сможем его использовать. Скопируйте файл конфигурации модели, чтобы создать новую конфигурацию для вашего сайта:
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 для запуска при ротации журналов сервера. Однако в первый раз лучше всего запускать его вручную. Сделайте это с помощью следующей команды:
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, чтобы мы могли просматривать статистику нашего сайта с самого сайта, а не через интерфейс командной строки. Отредактируйте ваш основной файл конфигурации 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 в правом верхнем углу. Если страница не загружается или отсутствует логотип, возможно, на предыдущем шаге что-то неправильно настроено - вернитесь назад и убедитесь, что все пути указаны правильно.
Неспособность защитить вашу страницу статистики может привести к плохим вещам, таким как спам реферера . Кроме того, вы не хотите, чтобы ваши подробные аналитические данные были доступны всему Интернету.
Мы будем использовать 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, как и раньше.
Наконец, нам нужна наша статистика для обновления. Мы будем использовать 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 теперь полностью настроен и готов к работе.
Изучение 26 методов анализа больших данных: часть 1
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше