Web Analytics · 6 min read · Dec 23, 2025
Come installare Matomo Web Analytics su Ubuntu 18.04 LTS

Matomo (ex Piwik) è un’applicazione di analisi web gratuita e open source sviluppata da un team di sviluppatori internazionali, che funziona su un server web PHP / MySQL. Tiene traccia delle visite online a uno o più siti web e visualizza report su queste visite per l’analisi. Puoi pensarlo come un’alternativa a Google Analytics. Matomo è open source e il suo codice è disponibile pubblicamente su Github. Alcune delle funzionalità che ha sono: A/B Testing, Heatmaps, Funnel, Tracking e Reporting API, Google AdWords, Facebook Ads, Bing Ads, Costo per clic (CPC), ecc. Questo tutorial ti mostrerà come installare Matomo su un sistema Ubuntu 18.04 LTS utilizzando Nginx come server web e proteggeremo il sito web con un certificato SSL Let’s Encrypt.
Requisiti
Per eseguire Matomo (Piwik) sul tuo sistema Ubuntu avrai bisogno di un paio di cose:
- Server web come Apache, Nginx, IIS.
- Versione PHP 5.5.9 o superiore con estensioni pdo e pdo_mysql o mysqli, gd, xml, curl e mbsting. PHP 7+ è raccomandato.
- Versione MySQL 5.5 o superiore, o la versione equivalente di MariaDB. MySQL 5.7+ è raccomandato.
Prerequisiti
- Un sistema operativo che esegue Ubuntu 18.04.
- Un utente non root con privilegi sudo.
Passi iniziali
Controlla la tua versione di Ubuntu:
lsb_release -ds
# Ubuntu 18.04.1 LTSImposta il fuso orario:
sudo dpkg-reconfigure tzdataAggiorna i pacchetti del tuo sistema operativo (software). Questo è un primo passo importante perché garantisce che tu abbia gli ultimi aggiornamenti e le correzioni di sicurezza per i pacchetti software predefiniti del tuo sistema operativo:
sudo apt update && sudo apt upgrade -yInstalla alcuni pacchetti essenziali che sono necessari per l’amministrazione di base del sistema operativo Ubuntu:
sudo apt install -y curl wget vim git unzip socatPasso 1 - Installa MySQL e crea un database per Matomo
Matomo supporta database MySQL e MariaDB. In questo tutorial, utilizzeremo MySQL come server di database.
Installa il server di database MySQL:
sudo apt install -y mysql-serverControlla la versione di MySQL:
mysql --version
# mysql Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using EditLine wrapperEsegui lo script mysql_secure_installation per migliorare la sicurezza di MySQL e impostare la password per l’utente root di MySQL:
sudo mysql_secure_installationRispondi a ciascuna delle domande:
`Would you like to setup VALIDATE PASSWORD plugin? N
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`Collegati alla shell di MySQL come utente root:
sudo mysql -u root -p
# Inserisci la password
Crea un database MySQL vuoto e un utente per Matomo e ricorda le credenziali:
mysql> CREATE DATABASE dbname;
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;Esci da MySQL:
mysql> exitSostituisci dbname, username e password con i tuoi nomi.
Passo 2 - Installa PHP e le estensioni PHP necessarie
Installa PHP, così come le estensioni PHP necessarie:
sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-curl php7.2-gd php7.2-xml php7.2-mbstring php7.2-mysqlControlla la versione di PHP:
php --version
# PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies
Il servizio PHP-FPM viene avviato automaticamente e abilitato all’avvio su un sistema Ubuntu 18.04, quindi non è necessario avviarlo e abilitarlo manualmente. Possiamo passare al passo successivo, che è ottenere certificati SSL gratuiti da Let’s Encrypt CA.
Passo 3 - Installa il client acme.sh e ottieni il certificato Let’s Encrypt ( opzionale)
Proteggere il tuo sito web con HTTPS non è necessario, ma è una buona pratica per proteggere il traffico del tuo sito. Per ottenere un certificato TLS da Let’s Encrypt utilizzeremo il client Acme.sh. Acme.sh è un software shell unix puro per ottenere certificati TLS da Let’s Encrypt senza dipendenze.
Scarica e installa 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 [email protected]
cd ~Controlla la versione di Acme.sh:
/etc/letsencrypt/acme.sh --version
# v2.8.0Ottieni certificati RSA e ECC/ECDSA per il tuo dominio/nome host:
# 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-256Dopo aver eseguito i comandi sopra, i tuoi certificati e chiavi saranno in:
- Per RSA: directory
/etc/letsencrypt/example.com. - Per ECC/ECDSA: directory
/etc/letsencrypt/example.com_ecc.
Passo 3 - Installa NGINX e configura NGINX per Matomo
Matomo può funzionare bene con molti software di server web popolari. In questo tutorial, abbiamo selezionato Nginx.
Scarica e installa l’ultima versione principale di Nginx dal repository di Ubuntu:
sudo apt install -y nginxControlla la versione di Nginx:
sudo nginx -v
# nginx version: nginx/1.14.0Configura Nginx per Matomo eseguendo:
sudo vim /etc/nginx/sites-available/matomo.conf
E popola il file con la seguente configurazione:
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.2-fpm.sock;
}
location = /plugins/HeatmapSessionRecording/configs.php {
include snippets/fastcgi-php.conf;
fastcgi_param HTTP_PROXY "";
fastcgi_pass unix:/var/run/php/php7.2-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;
}
}NOTA: Per una configurazione Nginx completa e pronta per la produzione per Matomo visita https://github.com/matomo-org/matomo-nginx.
Attiva la nuova configurazione matomo.conf collegando il file alla directory sites-enabled.
sudo ln -s /etc/nginx/sites-available/matomo.conf /etc/nginx/sites-enabledControlla la configurazione di Nginx per errori di sintassi:
sudo nginx -tRicarica il servizio Nginx:
sudo systemctl reload nginx.servicePasso 4 - Installa Matomo Analytics
Crea la directory /var/www:
sudo mkdir -p /var/www/Naviga nella directory /var/www:
cd /var/www/Scarica l’ultima versione di Matomo tramite wget e decomprimila:
sudo wget https://builds.matomo.org/matomo.zip && sudo unzip matomo.zip
Rimuovi il file matomo.zip scaricato:
sudo rm matomo.zipCambia la proprietà della directory /var/www/matomo all’utente www-data:
sudo chown -R www-data:www-data /var/www/matomoPasso 5 - Completa la configurazione di Matomo Analytics
Apri il tuo sito in un browser web e segui la procedura guidata di installazione web di Matomo.
Per prima cosa, dovrebbe apparire il messaggio di benvenuto di Matomo. Clicca sul pulsante “Avanti”: 
Dopo, vedrai una pagina di “Controllo del sistema”. Se manca qualcosa, vedrai un avviso. Se tutto è contrassegnato con un segno di spunta verde, clicca sul pulsante “Avanti” per procedere al passo successivo: 
Successivamente, compila i dettagli del database e clicca sul pulsante “Avanti”: 
Se tutto è andato bene con la configurazione del database, dovresti vedere il messaggio “ Tabelle create con successo!”: 
Crea un account super utente Matomo e clicca sul pulsante “Avanti”: 
Successivamente, imposta il primo sito web che desideri monitorare e analizzare con Matomo. In seguito, puoi aggiungere altri siti da monitorare con Matomo: 
Successivamente, ti verrà fornito il codice di tracciamento JavaScript per il tuo sito che devi aggiungere per iniziare a monitorare. 
Successivamente, dovresti vedere che l’installazione di Matomo è completata. 
Congratulazioni! La tua installazione di Matomo è completa.
Link
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.