Как установить Matomo Web Analytics в Debian 9
Это руководство существует для этих версий ОС
- Debian 11 (Bullseye)
- Debian 9 (Stretch)
На этой странице
- Требования
- Предпосылки
- Начальные шаги
- Шаг 1. Установите MySQL и создайте базу данных для Matomo.
- Шаг 2. Установите PHP и необходимые расширения PHP
- Шаг 3. Установите клиент
acme.sh
и получите Let\>) - Шаг 3. Установите NGINX и настройте NGINX для Matomo
- Шаг 4. Установите Matomo Analytics
- Шаг 5. Завершите настройку Matomo Analytics
- Ссылки
Matomo (ранее Piwik) – это бесплатное приложение для веб-аналитики с открытым исходным кодом, разработанное командой международных разработчиков и работающее на веб-сервере PHP/MySQL. Он отслеживает онлайн-посещения одного или нескольких веб-сайтов и отображает отчеты об этих посещениях для анализа. Вы можете думать об этом как об альтернативе Google Analytics. У Matomo открытый исходный код, и его код общедоступен на Github. Вот некоторые из его функций: A/B-тестирование, тепловые карты, воронки, API отслеживания и отчетности, Google AdWords, реклама в Facebook, реклама Bing, цена за клик (CPC) и т. д. В этом руководстве показано, как установить Matomo на система Debian 9 (stretch), использующая Nginx в качестве веб-сервера, и мы защитим веб-сайт с помощью SSL-сертификата Lets Encrypt.
Требования
Чтобы запустить Matomo (Piwik) в вашей системе Debian, вам понадобится несколько вещей:
- Веб-сервер, например Apache или Nginx.
- PHP версии 5.5.9 или выше с расширениями pdo и pdo_mysql или mysqli, gd, xml, curl и mbsting. Рекомендуется PHP 7+.
- MySQL версии 5.5 или выше или эквивалентная версия MariaDB. Рекомендуется MySQL 5.7+.
Предпосылки
- Операционная система под управлением Debian 9 (расширенная).
- Пользователь без полномочий root с привилегиями sudo.
Начальные шаги
Проверьте свою версию Debian:
lsb_release -ds
# Debian GNU/Linux 9.6 (stretch)
Настройте часовой пояс:
dpkg-reconfigure tzdata
Обновите пакеты операционной системы (программное обеспечение). Это важный первый шаг, поскольку он гарантирует наличие последних обновлений и исправлений безопасности для пакетов программного обеспечения вашей операционной системы по умолчанию:
apt update && apt upgrade -y
Установите несколько основных пакетов, необходимых для базового администрирования операционной системы Debian:
apt install -y curl wget vim git unzip socat sudo
Шаг 1. Установите MySQL и создайте базу данных для Matomo.
Matomo поддерживает базы данных MySQL и MariaDB. Команда Debian заменила MySQL на MariaDB в качестве базы данных по умолчанию из Debian 9 (stretch), поэтому в этом руководстве мы будем использовать MariaDB в качестве сервера базы данных. Если вы хотите установить оригинальный MySQL, вы можете добавить и использовать официальный репозиторий MySQL, поддерживаемый Oracle.
Установите сервер базы данных MariaDB:
sudo apt install -y mariadb-server
Проверьте версию MariaDB:
mysql --version
# mysql Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using EditLine wrapper
Запустите скрипт mysql_secure install
, чтобы улучшить безопасность MariaDB, и установите пароль для пользователя root
MariaDB:
sudo mysql_secure_installation
Ответьте на каждый из вопросов:
Enter current password for root (enter for none): Press Enter
Set root password? [Y/n] y
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Подключитесь к оболочке MariaDB как пользователь root:
sudo mysql -u root -p
# Enter password
Создайте пустую базу данных MariaDB и пользователя для Matomo и запомните учетные данные:
mysql> CREATE DATABASE dbname;
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
Выход из MariaDB:
mysql> exit
Замените имя_базы_данных
, имя_пользователя
и пароль
своими именами.
Шаг 2 - Установите PHP и необходимые расширения PHP
Установите PHP, а также необходимые расширения PHP:
sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-curl php7.0-gd php7.0-xml php7.0-mbstring php7.0-mysql
Проверить версию PHP:
php --version
# PHP 7.0.33-0+deb9u1 (cli) (built: Dec 7 2018 11:36:49) ( NTS )
# Copyright (c) 1997-2017 The PHP Group
# Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
# with Zend OPcache v7.0.33-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies
Служба PHP-FPM автоматически запускается и включается при перезагрузке системы Debian 9, поэтому нет необходимости запускать и включать ее вручную. Мы можем перейти к следующему шагу — получению бесплатных сертификатов SSL от Lets Encrypt CA.
Шаг 3. Установите клиент acme.sh и получите сертификат Lets Encrypt (необязательно)
Защита вашего веб-сайта с помощью HTTPS не является обязательной, но это хорошая практика для защиты трафика вашего сайта. Чтобы получить сертификат TLS от Lets Encrypt, мы будем использовать клиент acme.sh. Acme.sh — это чистое программное обеспечение оболочки Unix для получения сертификатов TLS от Lets Encrypt без каких-либо зависимостей.
Загрузите и установите acme.sh:
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail
cd ~
Проверьте версию acme.sh:
/etc/letsencrypt/acme.sh --version
# v2.8.0
Получите сертификаты RSA и ECC/ECDSA для своего домена/имени хоста:<br>
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256
После выполнения приведенных выше команд ваши сертификаты и ключи будут находиться в:
- Для RSA:
/etc/letsencrypt/example.com
каталог. - Для ECC/ECDSA:
/etc/letsencrypt/example.com_ecc
каталог.
Шаг 3. Установите NGINX и настройте NGINX для Matomo.
Matomo может нормально работать со многими популярными программами для веб-серверов. В этом уроке мы выбрали Nginx.
Загрузите и установите Nginx из репозитория Debian:
sudo apt install -y nginx
Проверьте версию Nginx:
sudo nginx -v
# nginx version: nginx/1.10.3
Настройте Nginx для Matomo, выполнив:
sudo vim /etc/nginx/sites-available/matomo.conf
И заполните файл следующей конфигурацией:
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
listen [::]:80;
listen 80;
server_name example.com;
root /var/www/matomo/;
index index.php;
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;
location ~ ^/(index|matomo|piwik|js/index).php {
include snippets/fastcgi-php.conf;
fastcgi_param HTTP_PROXY "";
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
}
location = /plugins/HeatmapSessionRecording/configs.php {
include snippets/fastcgi-php.conf;
fastcgi_param HTTP_PROXY "";
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
}
location ~* ^.+\.php$ {
deny all;
return 403;
}
location / {
try_files $uri $uri/ =404;
}
location ~ /(config|tmp|core|lang) {
deny all;
return 403;
}
location ~ \.(gif|ico|jpg|png|svg|js|css|htm|html|mp3|mp4|wav|ogg|avi|ttf|eot|woff|woff2|json)$ {
allow all;
}
location ~ /(libs|vendor|plugins|misc/user) {
deny all;
return 403;
}
}
ПРИМЕЧАНИЕ. Полную и готовую к работе конфигурацию Nginx для Matomo можно найти на https://github.com/matomo-org/matomo-nginx.
Активируйте новую конфигурацию matomo.conf
, связав файл с каталогом sites-enabled
.
sudo ln -s /etc/nginx/sites-available/matomo.conf /etc/nginx/sites-enabled
Проверьте конфигурацию Nginx на наличие синтаксических ошибок:
sudo nginx -t
Перезагрузите сервис Nginx:
sudo systemctl reload nginx.service
Шаг 4 — Установите Matomo Analytics
Создайте каталог /var/www
:
sudo mkdir -p /var/www
Перейдите в каталог /var/www
:
cd /var/www/
Загрузите последнюю версию Matomo через wget и разархивируйте ее:
sudo wget https://builds.matomo.org/matomo.zip && sudo unzip matomo.zip
Удалите загруженный файл matomo.zip
:
sudo rm matomo.zip
Измените владельца каталога /var/www/matomo
на www-data
user:
sudo chown -R www-data:www-data /var/www/matomo
Шаг 5. Завершите настройку Matomo Analytics.
Откройте свой сайт в веб-браузере и следуйте указаниям мастера веб-установки Matomo.
Сначала должно появиться приветственное сообщение Matomo. Нажмите кнопку \Далее\:
После этого вы увидите страницу \Проверка системы\. Если чего-то не хватает, вы увидите предупреждение. Если все отмечено зеленой галочкой, нажмите кнопку \Далее\, чтобы перейти к следующему шагу:
Затем заполните данные базы данных и нажмите кнопку \Далее\:
Если все прошло успешно с настройкой базы данных, вы должны увидеть сообщение \Таблицы успешно созданы!\:
Создайте учетную запись суперпользователя Matomo и нажмите кнопку \Далее\:
Затем настройте первый веб-сайт, который вы хотите отслеживать и анализировать с помощью Matomo. Позже вы можете добавить больше сайтов для отслеживания с помощью Matomo:
Далее вам будет предоставлен код отслеживания JavaScript для вашего сайта, который необходимо добавить, чтобы начать отслеживание.
Далее вы должны увидеть, что установка Matomo завершена.
Поздравляем! Ваша установка Matomo завершена.
Ссылки
- https://matomo.org/
- https://github.com/matomo-org/matomo-nginx