Pesquisa de site

Como instalar o Matomo Web Analytics no CentOS 7


Nesta página

  1. Requisitos
  2. Pré-requisitos
  3. Etapas iniciais
  4. Etapa 1 - Instale MariaDB e crie um banco de dados para Matomo
  5. Etapa 2 - Instale o PHP e as extensões PHP necessárias
  6. Etapa 3 - Instale acme.sh cliente e obtenha Let\>)
  7. Etapa 3 - Instale o NGINX e configure o NGINX para Matomo
  8. Etapa 4 - Instale o Matomo Analytics
  9. Etapa 5 - Conclua a configuração do Matomo Analytics
  10. Links

Matomo (anteriormente Piwik) é um aplicativo de análise da web gratuito e de código aberto desenvolvido por uma equipe de desenvolvedores internacionais, que é executado em um servidor da web PHP/MySQL. Ele rastreia as visitas online a um ou mais sites e exibe relatórios sobre essas visitas para análise. Você pode pensar nisso como uma alternativa ao Google Analytics. O Matomo é de código aberto e seu código está disponível publicamente no Github. Alguns dos recursos que ele possui são: Teste A/B, Mapas de calor, Funis, API de rastreamento e relatórios, Google AdWords, Facebook Ads, Bing Ads, Custo por clique (CPC), etc. Este tutorial mostrará como instalar o Matomo em um sistema CentOS 7 usando Nginx como servidor da Web e protegeremos o site com um certificado Lets Encrypt SSL.

Requisitos

Para executar o Matomo (Piwik) em seu sistema CentOS 7, você precisará de algumas coisas:

  • Servidor da Web como Apache, Nginx, IIS.
  • PHP versão 5.5.9 ou superior com extensões pdo e pdo_mysql ou mysqli, gd, xml, curl e mbsting. PHP 7+ é recomendado.
  • MySQL versão 5.5 ou superior, ou a versão MariaDB equivalente. MySQL 5.7+ é recomendado.

Pré-requisitos

  • Um sistema operacional executando CentOS 7.
  • Um usuário não root com privilégios sudo.

Etapas iniciais

Verifique sua versão do CentOS:

cat /etc/centos-release

Configure o fuso horário:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Atualize seus pacotes de sistema operacional (software). Este é um primeiro passo importante porque garante que você tenha as atualizações e correções de segurança mais recentes para os pacotes de software padrão do seu sistema operacional:

sudo yum update -y

Instale alguns pacotes essenciais que são necessários para a administração básica do sistema operacional CentOS:

sudo yum install -y curl wget vim git unzip socat epel-release

Passo 1 - Instale MariaDB e crie um banco de dados para Matomo

Matomo é compatível com bancos de dados MySQL e MariaDB. Neste tutorial, usaremos o MariaDB como servidor de banco de dados.

Crie o repositório MariaDB 10.2 YUM para CentOS:

sudo vim /etc/yum.repos.d/MariaDB.repo

Copie e cole o seguinte texto nele:

# MariaDB 10.2 CentOS repository list - created 2017-12-11 23:19 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name=MariaDB
baseurl=https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Depois que o arquivo estiver no lugar, instale o MariaDB executando:

sudo yum install -y MariaDB-server MariaDB-client

Verifique a versão do MariaDB:

mysql --version
# mysql  Ver 15.1 Distrib 10.2.21-MariaDB, for Linux (x86_64) using readline 5.1

Inicie e habilite o serviço MariaDB:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Execute o script de instalação mysql_secure para melhorar a segurança do MariaDB e defina a senha para o usuário root do MariaDB:

sudo mysql_secure_installation

Responda a cada uma das perguntas:

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

Conecte-se ao shell MariaDB como usuário root:

sudo mysql -u root -p
# Enter password

Crie um banco de dados MariaDB e um usuário vazios para Matomo e lembre-se das credenciais:

MariaDB [(none)]> CREATE DATABASE dbname;
MariaDB [(none)]> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
MariaDB [(none)]> FLUSH PRIVILEGES;

Sair do MariaDB:

MariaDB [(none)]> exit

Substitua dbnameusername e password pelos seus próprios nomes.

Etapa 2 - Instale o PHP e as extensões PHP necessárias

Configure o repositório Webtatic YUM:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Instale o PHP, bem como as extensões PHP necessárias:

sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-curl php72w-gd php72w-xml php72w-mbstring php72w-mysqlnd php72w-json

Para mostrar o PHP compilado em módulos, você pode executar:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Verifique a versão do PHP:

php --version

# PHP 7.2.14 (cli) (built: Jan  8 2019 09:59:17) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Inicie e ative o serviço PHP-FPM:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Podemos passar para a próxima etapa, que é obter certificados SSL gratuitos da Lets Encrypt CA.

Passo 3 - Instale o cliente acme.sh e obtenha o certificado Lets Encrypt (opcional)

Proteger seu site com HTTPS não é necessário, mas é uma boa prática proteger o tráfego do site. Para obter um certificado TLS da Lets Encrypt, usaremos o cliente Acme.sh. Acme.sh é um software de shell UNIX puro para obter certificados TLS da Lets Encrypt com zero dependências.

Baixe e instale 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 ~

Verifique a versão Acme.sh :

/etc/letsencrypt/acme.sh --version
# v2.8.0

Obtenha os certificados RSA e ECC/ECDSA para seu domínio/nome de host:<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

Depois de executar os comandos acima, seus certificados e chaves estarão em:

  • Para RSA: /etc/letsencrypt/example.com diretório.
  • Para ECC/ECDSA: /etc/letsencrypt/example.com_ecc diretório.

Etapa 3 - Instale o NGINX e configure o NGINX para Matomo

O Matomo pode funcionar bem com muitos softwares de servidor da web populares. Neste tutorial, selecionamos Nginx.

Baixe e instale o Nginx do repositório CentOS:

sudo yum install -y nginx

Verifique a versão do Nginx:

sudo nginx -v

Inicie e ative o serviço Nginx:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Configure o Nginx para Matomo executando:

sudo vim /etc/nginx/conf.d/matomo.conf

E preencha o arquivo com a seguinte configuração:

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 {
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 127.0.0.1:9000;
}

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 127.0.0.1:9000;
}

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;
}

}

OBSERVAÇÃO: Para obter a configuração Nginx completa e pronta para produção para Matomo, visite https://github.com/matomo-org/matomo-nginx.

Verifique a configuração do Nginx quanto a erros de sintaxe:

sudo nginx -t

Recarregue o serviço Nginx:

sudo systemctl reload nginx.service

Etapa 4 - Instale o Matomo Analytics

Crie o diretório /var/www :

sudo mkdir -p /var/www/

Navegue até o diretório /var/www :

cd /var/www/

Baixe a versão mais recente do Matomo via wget e descompacte-o:

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

Remova o arquivo matomo.zip baixado:

sudo rm matomo.zip

Altere a propriedade do diretório /var/www/matomo para nginx user:

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

Execute sudo vim /etc/php-fpm.d/www.conf e defina o usuário e o grupo como nginx. Inicialmente, ele será definido como usuário e grupo apache.

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Reinicie o serviço PHP-FPM.

sudo systemctl restart php-fpm.service

Etapa 5 - Conclua a configuração do Matomo Analytics

Abra seu site em um navegador da Web e siga o assistente de instalação da Web do Matomo.

Primeiro, a mensagem de boas-vindas do Matomo deve aparecer. Clique no botão \Próximo\ :

Depois, você verá uma página \System Check\. Se algo estiver faltando, você verá um aviso. Se tudo estiver marcado com uma marca de seleção verde, clique no botão \Avançar\ para prosseguir para a próxima etapa:

Em seguida, preencha os detalhes do banco de dados e clique no botão \Avançar\ :

Se tudo correu bem com a configuração do banco de dados, você deve ver a mensagem \Tabelas criadas com sucesso!\:

Crie uma conta de superusuário Matomo e clique no botão \Avançar\ :

Em seguida, configure o primeiro site que você gostaria de rastrear e analisar com o Matomo. Mais tarde, você pode adicionar mais sites para rastrear com o Matomo:

Em seguida, você receberá o código de rastreamento JavaScript do seu site que precisa adicionar para iniciar o rastreamento.

Em seguida, você deve ver que a instalação do Matomo está concluída.

Parabéns! Sua instalação do Matomo está completa.

links

  • https://matomo.org/
  • https://github.com/matomo-org/matomo-nginx

Artigos relacionados:


Todos os direitos reservados. © Linux-Console.net • 2019-2024