Como instalar o Matomo no CentOS 7 Nginx

Como instalar o Matomo no CentOS 7 Nginx

Neste artigo, aprenderemos como instalar o Matomo no CentOS 7 Nginx.

Matomo, anteriormente Piwik, é um aplicativo analítico da web gratuito e de código aberto desenvolvido por uma equipe de desenvolvedores internacionais, que roda em um servidor web PHP / MySQL. Ele rastreia as visitas online a um ou mais sites e exibe relatórios sobre essas visitas para análise.

Por que Matomo

Os dados do Analytics são seus. Seus dados do Matomo Analytics são 100% seus, sem terceiros olhando.

Ao contrário do Google Analytics, que usa seus dados para servir à sua plataforma de publicidade, os usuários do Matomo podem usar análises com segurança, sem se preocupar com os dados sendo usados ​​para marketing ou quaisquer outros fins.

Pré-requisitos:

Antes de começar, verifique se você tem o seguinte:

  • Um VPS ou servidor dedicado.
  • Um sistema operacional executando CentOS 7
  • Acesso ao seu servidor web (via shell ou FTP)

1. Etapas iniciais

Mantenha seu servidor atualizado:

# yum update -y

2. Instale MariaDB 10.4 e crie banco de dados para Matomo

Crie o arquivo MariaDB.repo em seu editor favorito:

# vi /etc/yum.repos.d/MariaDB.repo

E adicione as seguintes linhas:

# MariaDB 10.4 CentOS repository list
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]

name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Agora, inicie a instalação do MariaDB 10.4

# yum install MariaDB-client MariaDB-server

Depois de terminar, inicie o MariaDB:

# systemctl start mariadb.service

# systemctl enable mariadb.service

Proteja o MySQL

# mysql_secure_installation

2. Instale o Nginx

Adicionar repositório EPEL (Extra Packages for Enterprise Linux):

# yum install epel-release

Agora, instale o NGINX usando o seguinte comando:

# yum install nginx

Inicie e habilite o serviço Nginx

# systemctl start nginx

# systemctl enable nginx

Configurar Nginx para Matomo

# vi /etc/nginx/conf.d/matomo.conf

Adicione as seguintes linhas de configuração:

server {

listen [::]:80;
listen 80;

server_name example.com;
root /var/www/matomo/;
index index.php;

location ~ ^/(index|matomo|piwik|js/index).php {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
try_files $fastcgi_script_name =404;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param HTTP_PROXY "';
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
}

location = /plugins/HeatmapSessionRecording/configs.php {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
try_files $fastcgi_script_name =404;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param HTTP_PROXY "';
fastcgi_pass unix:/var/run/php-fpm/php-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;
}

}

Não se preocupe com o redirecionamento de SSL por enquanto. Instalaremos o Let's Encrypt using Certbot posteriormente neste artigo. O Certbot adicionará redirecionamento SSL e localização do certificado automaticamente durante a obtenção do certificado.

Teste a configuração

# nginx -t

Se o teste for bem-sucedido, reinicie o serviço Nginx. Se o teste falhar, verifique o erro e modifique o arquivo de configuração conforme os requisitos.

# systemctl restart nginx

3. Instale PHP com PHP-FPM para Nginx

Instale o repositório Remi:

# rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Habilite a versão PHP:

# yum-config-manager --enable remi-php73

Agora, instale o PHP 7.3 junto com os módulos PHP necessários:

# yum -y install php php-fpm php-common php-mysqlnd php-gd  php-json php-libxml php-mbstring php-xml php-curl php-fileinfo  php-mcrypt php-memcached php-imagick

Abra o arquivo de configuração php-fpm:

# vi /etc/php-fpm.d/www.conf

Procure o usuário e o grupo, altere o parâmetro do apache para nginx.

user = nginx

group = nginx

Encontre o parâmetro de escuta e altere-o como:

listen = /var/run/php-fpm/php-fpm.sock

Encontre linhas que definam listen.owner e listen.group e descomente-os. Definir como nginx:

listen.owner = nginx

listen.group = nginx

Depois de fazer a configuração, salve e saia.

Agora, inicie e habilite o processador PHP:

# systemctl start php-fpm

# systemctl enable php-fpm

4. Instale o Let's Encrypt using Certbot

Instale o pacote certbot-nginx:

# yum install certbot-nginx -y

Obtenção de um certificado

# certbot --nginx -d yoursite.com -d www.yousite.com

5. Instale o Matomo Analytics

Navegue até o diretório / var / www

# cd /var/www/

Baixe o último lançamento do Matomo usando o comando wget e descompacte-o

# wget https://builds.matomo.org/matomo.zip && unzip matomo.zip

Remova o arquivo matomo.zip baixado

# rm -rf matomo.zip

Mude a propriedade do diretório / var / www / matomo para o usuário nginx

# chown -R nginx:nginx /var/www/matomo

6. Conclua o Matomo Analytics

Abra seu site no navegador e siga o assistente de instalação do Matomo na web.

É hora de começar a instalação apontar e clicar! Clique em Avançar »

Como instalar o Matomo no CentOS 7 Nginx

Aprendemos com sucesso como instalar o Matomo no CentOS 7 Nginx.