Ricerca nel sito web

Come installare Matomo Web Analytics su Debian 11


Questo tutorial esiste per queste versioni del sistema operativo

  • Debian 11 (Bullseye)
  • Debian 9 (Stretch)

Su questa pagina

  1. Prerequisiti
  2. Installa Apache, MariaDB e PHP
  3. Crea un database MariaDB per Matomo
  4. Scarica Matomo
  5. Configura Apache per Matomo
  6. Accedi all'interfaccia utente Web di Matomo
  7. Proteggi Matomo con Lets Encrypt SSL
  8. Conclusione

Matomo, precedentemente noto come Piwik, è un'applicazione di analisi web gratuita e open source sviluppata da una comunità di sviluppatori. Viene utilizzato per tracciare il tuo sito Web e fornire informazioni dettagliate sul tuo sito Web e sui suoi visitatori, inclusi i motori di ricerca e le parole chiave che hanno utilizzato, la lingua che parlano, le pagine che preferiscono, i file che scaricano e molto altro ancora. Offre molte funzionalità tra cui Google AdWords, Facebook Ads, Yahoo, Search Marketing, API di tracciamento e reporting e costo per clic (CPC).

In questo tutorial, ti mostrerò come installare Matomo su Debian 11 con un server web Apache2 e un certificato SSL Lets Encrypt gratuito.

Prerequisiti

  • Un server che esegue Debian 11.
  • Un nome di dominio valido indicato con l'IP del tuo server.
  • Sul server è configurata una password di root.

Installa Apache, MariaDB e PHP

Innanzitutto, dovrai installare il server Web Apache, il server del database MariaDB, PHP e altre estensioni PHP sul tuo server. Puoi installarli tutti eseguendo il seguente comando:

apt-get install apache2 mariadb-server php libapache2-mod-php php-cli php-fpm php-fpm php-json php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath curl unzip -y

Dopo aver installato tutti i pacchetti, avvia e abilita il servizio Apache e MariaDB utilizzando il seguente comando:

systemctl start apache2 mariadb
systemctl enable apache2 mariadb

Una volta terminato, puoi procedere al passaggio successivo.

Crea un database MariaDB per Matomo

Matomo utilizza un MariaDB come backend del database. Quindi dovrai creare un database e un utente per Matomo.

Innanzitutto, accedi a MariaDB con il seguente comando:

mysql

Una volta effettuato l'accesso, creare un database e un utente con il seguente comando:

MariaDB [(none)]> CREATE DATABASE matomodb;
MariaDB [(none)]> CREATE USER 'matomo'@'localhost' IDENTIFIED BY 'password';

Quindi, concedi tutti i privilegi al database Matomo con il seguente comando:

MariaDB [(none)]> GRANT ALL ON matomodb.* TO 'matomo'@'localhost' WITH GRANT OPTION;

Successivamente, svuota i privilegi ed esci dalla shell MariaDB con il seguente comando:

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

Dopo aver configurato il database MariaDB, puoi procedere al passaggio successivo.

Scarica Matomó

Successivamente, visita il sito Web ufficiale di Matomo e scarica l'ultima versione di Matomo con il seguente comando:

wget http://builds.matomo.org/matomo-latest.zip

Una volta completato il download, decomprimere il file scaricato con il seguente comando:

unzip matomo-latest.zip

Successivamente, sposta la directory estratta nella directory principale del Web Apache:

mv matomo /var/www/html/matomo

Successivamente, modifica la proprietà e l'autorizzazione della directory Matomo:

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

Una volta terminato, puoi procedere al passaggio successivo.

Configura Apache per Matomo

Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per ospitare Matomo su Internet. Puoi crearlo con il seguente comando:

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

Aggiungi le seguenti righe:

<VirtualHost *:80>

ServerAdmin 
ServerName matomo.example.com
DocumentRoot /var/www/html/matomo/

<Directory /var/www/html/matomo>
DirectoryIndex index.php
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>

<Files "console">
Options None
Require all denied
</Files>

<Directory /var/www/html/matomo/misc/user>
Options None
Require all granted
</Directory>

<Directory /var/www/html/matomo/misc>
Options None
Require all denied
</Directory>

<Directory /var/www/html/matomo/vendor>
Options None
Require all denied
</Directory>

ErrorLog ${APACHE_LOG_DIR}/matomo_error.log
CustomLog ${APACHE_LOG_DIR}/matomo_access.log combined


</VirtualHost>

Salva e chiudi il file quando hai finito, quindi attiva l'host virtuale Matomo e il modulo di riscrittura Apache con il seguente comando:

a2ensite matomo.conf
a2enmod rewrite

Successivamente, riavvia il servizio Apache per applicare le modifiche:

systemctl restart apache2

Puoi anche controllare lo stato di Apache con il seguente comando:

systemctl status apache2

Otterrai il seguente output:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2022-03-06 06:33:24 UTC; 5s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 55482 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 55486 (apache2)
      Tasks: 6 (limit: 4679)
     Memory: 12.4M
        CPU: 108ms
     CGroup: /system.slice/apache2.service
             ??55486 /usr/sbin/apache2 -k start
             ??55487 /usr/sbin/apache2 -k start
             ??55488 /usr/sbin/apache2 -k start
             ??55489 /usr/sbin/apache2 -k start
             ??55490 /usr/sbin/apache2 -k start
             ??55491 /usr/sbin/apache2 -k start

Mar 06 06:33:24 debian11 systemd[1]: Starting The Apache HTTP Server...
Mar 06 06:33:24 debian11 apachectl[55485]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 209>
Mar 06 06:33:24 debian11 systemd[1]: Started The Apache HTTP Server.

Accedi all'interfaccia utente Web di Matomo

Ora apri il tuo browser web e accedi all'interfaccia web di Matomo usando l'URL http://matomo.example.com. Verrai reindirizzato alla seguente pagina:

Fare clic sul pulsante Avanti. Dovresti vedere la pagina di controllo della configurazione PHP:

Assicurati che tutte le configurazioni siano corrette, quindi fai clic sul pulsante AVANTI. Dovresti vedere la pagina di configurazione del database MariaDB:

Fornisci il server del database, il nome utente, il nome del database, la password, quindi fai clic sul pulsante AVANTI. Dovresti vedere la seguente pagina:

Fare clic sul pulsante AVANTI. Dovresti vedere la pagina di creazione del Super User:

Fornisci il nome utente, la password, l'e-mail dell'amministratore e fai clic sul pulsante AVANTI. Dovresti vedere la pagina di configurazione del sito web:

Fornisci il nome del tuo sito web, l'URL, il fuso orario e fai clic sul pulsante AVANTI. Dovresti vedere la seguente pagina:

Fare clic sul pulsante AVANTI. Dovresti vedere la pagina di verifica della configurazione:

Fare clic su CONTINUA A MATOMO. Dovresti vedere la pagina di accesso di Matomo:

Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante ACCEDI. Dovresti vedere la dashboard di Matomo nella pagina seguente: Ora puoi copiare il codice di monitoraggio mostrato nell'immagine sopra e incollarlo in ogni pagina del tuo sito web.

Proteggi Matomo con Lets Encrypt SSL

Successivamente, dovrai installare il client Certbot per installare Lets Encrypt SSL per il tuo sito web. Puoi installarlo con il seguente comando:

dnf install epel-release -y dnf install certbot python3-certbot-apache

Successivamente, ottieni e installa un certificato SSL per il tuo dominio let con il seguente comando:

certbot --apache -d matomo.example.com

Ti verrà chiesto di fornire il tuo indirizzo email e di accettare i termini di servizio:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
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. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, 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
Account registered.
Requesting a certificate for matomo.example.com
Performing the following challenges:
http-01 challenge for matomo.example.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/httpd/conf.d/matomo.conf
Redirecting all traffic on port 80 to ssl in /etc/httpd/conf.d/matomo.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://matomo.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Subscribe to the EFF mailing list (email: ).


IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/matomo.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/matomo.example.com/privkey.pem
   Your certificate will expire on 2022-05-09. 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"
 - 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

Conclusione

Congratulazioni! hai installato correttamente Matomo su Debian 11. Ora puoi aggiungere il codice di tracciamento al tuo sito web e iniziare a monitorarlo dalla dashboard di Matomo. Non esitate a chiedermi se avete domande.