Поиск по сайту:

Как установить Matomo Web Analytics на Ubuntu 20.04


Это руководство существует для этих версий ОС

  • Ubuntu 18.04 (Бионический бобер)

На этой странице

  1. Предпосылки
  2. Начало работы
  3. Установить сервер LEMP
  4. Создание базы данных Matomo
  5. Скачать Матомо
  6. Настройка Nginx для Matomo
  7. Защитите Matomo с помощью Lets Encrypt SSL
  8. Доступ к Matomo Analytics
  9. Заключение

Matomo, ранее известное как Piwik, — это бесплатное приложение для веб-аналитики с открытым исходным кодом, которое помогает вам отслеживать онлайн-посетителей на вашем веб-сайте. Это альтернатива программному обеспечению Google Analytics, которое дает вам полный контроль над аналитикой и данными вашего веб-сайта без использования сторонних решений. Он предназначен для малого и среднего бизнеса и может использоваться для отслеживания ключевых показателей эффективности, таких как посещения, загрузки, показатели конверсии, ключевые слова и многое другое.

В этом руководстве мы покажем вам, как установить программное обеспечение веб-аналитики Matomo на Ubuntu 20.04 с помощью Nginx и Lets Encrypt SSL.

Предпосылки

  • Сервер под управлением Ubuntu 20.04.
  • Действительное доменное имя, указанное с IP-адресом вашего сервера.
  • Пароль root настраивается на сервере.

Начиная

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

apt-get update -y

После обновления всех пакетов установите другие необходимые зависимости, выполнив следующую команду:

apt-get install curl wget vim git unzip socat gnupg2 -y

После установки всех необходимых пакетов можно переходить к следующему шагу.

Установить LEMP-сервер

Matomo работает на веб-сервере, написанном на PHP, и использует MySQL для базы данных. Поэтому стек LEMP должен быть установлен на вашем сервере. Вы можете установить его с помощью следующей команды:

apt-get install nginx mariadb-server php7.4 php7.4-cli php7.4-fpm php7.4-common php7.4-curl php7.4-gd php7.4-xml php7.4-mbstring php7.4-mysql -y

После установки стека LEMP вы можете перейти к следующему шагу.

Создать базу данных Матомо

Matomo требуется база данных для хранения аналитических данных. Итак, вам нужно будет создать базу данных и пользователя для Matomo.

Сначала войдите в MariaDB с помощью следующей команды:

mysql

После входа в систему создайте базу данных и пользователя для Matomo с помощью следующей команды:

MariaDB [(none)]> CREATE DATABASE matomodb;
MariaDB [(none)]> GRANT ALL ON matomodb.* TO 'matomo' IDENTIFIED BY 'password';

Затем сбросьте привилегии и выйдите из MariaDB с помощью следующей команды:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

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

Скачать Матомо

Сначала загрузите последнюю версию Matomo в корневой веб-каталог Nginx с официального сайта с помощью следующей команды:

cd /var/www/html/
wget https://builds.matomo.org/matomo.zip

После загрузки разархивируйте загруженный файл с помощью следующей команды:

unzip matomo.zip

Затем измените владельца матомо на www-data:

chown -R www-data:www-data /var/www/html/matomo

Как только вы закончите, вы можете перейти к следующему шагу.

Настройте Nginx для Matomo

Затем вам нужно будет создать новый файл конфигурации виртуального хоста Nginx для обслуживания Matomo.

nano /etc/nginx/sites-available/matomo.conf

Добавьте следующие строки:

server {

  listen 80;
  server_name matomo.linuxbuz.com;
  root /var/www/html/matomo/;
  index index.php;

  location ~ ^/(index|matomo|piwik|js/index).php {
    include snippets/fastcgi-php.conf;
    fastcgi_param HTTP_PROXY ""; 
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; 
  }
  
  location = /plugins/HeatmapSessionRecording/configs.php {
    include snippets/fastcgi-php.conf;
    fastcgi_param HTTP_PROXY "";
    fastcgi_pass unix:/var/run/php/php7.4-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;
  }

}

Сохраните и закройте файл, затем активируйте виртуальный хост с помощью следующей команды:

ln -s /etc/nginx/sites-available/matomo.conf /etc/nginx/sites-enabled/

Затем проверьте Nginx на наличие ошибок конфигурации с помощью следующей команды:

nginx -t

Вы должны увидеть следующий вывод:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Наконец, перезапустите службу Nginx, чтобы применить изменения:

systemctl restart nginx

На данный момент Nginx настроен для обслуживания Matomo. Теперь вы можете перейти к следующему шагу.

Защитите Matomo с помощью Lets Encrypt SSL

Всегда полезно защитить свой сайт с помощью Lets Encrypt SSL. Сначала установите клиент Certbot Lets Encrypt на свой сервер с помощью следующей команды:

apt-get install python3-certbot-nginx -y

После установки защитите свой сайт с помощью Lets Encrypt SSL, выполнив следующую команду:

certbot --nginx -d matomo.linuxbuz.com

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

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for matomo.linuxbuz.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/matomo.conf

Затем выберите, следует ли перенаправлять HTTP-трафик на HTTPS, как показано ниже:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Введите 2 и нажмите Enter, чтобы завершить установку. Вы должны увидеть следующий вывод:

Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/matomo.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://matomo.linuxbuz.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=matomo.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/matomo.linuxbuz.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/matomo.linuxbuz.com/privkey.pem
   Your cert will expire on 2020-10-30. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

 - We were unable to subscribe you the EFF mailing list because your
   e-mail address appears to be invalid. You can try again later by
   visiting https://act.eff.org.

Теперь ваш веб-сайт Matomo защищен с помощью Lets Encrypt SSL.

Доступ к аналитике Matomo

Теперь откройте веб-браузер и введите URL-адрес https://matomo.linuxbuz.com. Вы будете перенаправлены на экран приветствия Matomo:

Нажмите кнопку ДАЛЕЕ. Вы должны увидеть экран проверки предварительных требований Matomo:

Нажмите кнопку ДАЛЕЕ. Вы должны увидеть экран конфигурации базы данных matomo:

Укажите данные вашей базы данных и нажмите кнопку ДАЛЕЕ. Вы должны увидеть следующий экран:

Нажмите кнопку ДАЛЕЕ. Вы должны увидеть экран настройки пользователя администратора:

Введите имя пользователя администратора, пароль, адрес электронной почты и нажмите кнопку «ДАЛЕЕ». Вы должны увидеть экран настройки веб-сайта:

Укажите данные своего веб-сайта и нажмите кнопку «ДАЛЕЕ». Вы должны увидеть следующий экран:

Нажмите кнопку ДАЛЕЕ. После завершения установки вы должны увидеть следующий экран:

Нажмите ПРОДОЛЖИТЬ К МАТОМО. Вы будете перенаправлены на экран входа в систему Matomo:

Введите имя пользователя и пароль администратора и нажмите кнопку ВХОД. Вы должны увидеть приборную панель Matomo на следующем экране:

Заключение

Поздравляем! вы успешно установили и настроили аналитику Matomo с помощью Nginx и Lets Encrypt в Ubuntu 20.04. Теперь ВЫ можете интегрировать свой веб-сайт с Matomo и начать отслеживать свой веб-сайт. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.