wiki/HowtoMatomo.md

101 lines
3.5 KiB
Markdown
Raw Normal View History

2022-07-22 11:45:16 +02:00
---
title: Howto Matomo
categories: web webapp
...
* Documentation : <https://matomo.org/faq/on-premise/matomo-requirements/>
Matomo est une application web affichant des statistiques de consultation de pages web tout en protégeant les données et la vie privée des internautes.
## Pré-requis
2022-07-22 11:45:16 +02:00
Il y a besoin de ces pré-requis pour Debian 11 (Bullseye) :
2022-07-22 11:45:16 +02:00
~~~
# apt install php php-curl php-gd php-cli php-mysql php-xml php-mbstring
2022-07-22 11:45:16 +02:00
~~~
## Installation
Nous préconisons d'utiliser Matomo avec [Apache-ITK](HowtoApache) et [MariaDB](HowtoMySQL).
Pour [Apache-ITK](HowtoApache) on désactive la gestion des droits pour faciliter les mises à jour :
~~~
AssignUserID example example
~~~
## Déployer
2022-07-22 11:48:01 +02:00
Se connecter avec le compte UNIX dédié, télécharger l'application et le dézipper en supposant que le DocumentRoot soit par exemple `/home/compte_unix/www/` :
2022-07-22 11:45:16 +02:00
~~~
# su - compte_unix
2022-07-22 11:45:16 +02:00
$ wget https://builds.matomo.org/matomo.zip && unzip matomo.zip
$ mv -i matomo www
~~~
Il reste à suivre les instructions de son installation via https://domaine-matomo-instance.com
## Paramètrage
2022-07-22 11:45:16 +02:00
### Forcer le SSL
Pour augmenter d'un cran le niveau de sécurité, on ajoute dans `/home/matomo/www/config/config.ini.php` ces directives :
~~~
[General]
force_ssl = 1
~~~
### Activer l'archivage
Désactiver l'archivage via l'interface web dans : *administration (roue cranté)* -> *Système* -> *paramètres généraux* -> *Paramètres d'archivage* -> mettre sur *Non*
Puis ajouter cette tâche dans la crontab de l'utilisateur :
~~~
MAITO="foo@bar.com"
30 * * * * /usr/bin/php /home/matomo/www/console core:archive --url=https://domaine-matomo-instance.com
~~~
## Mise à jour
On peux facilement mettre à jour Matomo depuis l'interface d'administration en un seul click.
Il faut avant s'assurer que le répertoire racine de Matomo soit bien avec les droits en `755`
Ensuite il faut se connecter en tant que "super user" ou "admin" à Matomo et aller dans la section « Administration », si un nouvelle mise à jour est disponible, elle est proposer, donc cliquer sur "Update Automatically".
### Mise à jour sur les serveurs Matomo à fort trafic
Pour les serveurs à fort trafic, la mise à jour de Matomo peut prendre entre plusieurs minutes à plusieurs heures, il est donc recommander de lancer la mise à jour en ligne de commande.
Vous pouvez mettre à jour Matomo en cli de cette façon :
~~~
$ php /home/matomo/www/console core:update
~~~
Il est recommander également pour les serveurs a haut trafic, de désactivé le tracking des visiteurs et l'interface web de cette façon :
~~~
[Tracker]
record_statistics = 0
[General]
maintenance_mode = 1
~~~
Lorsque Matomo est en `maintenance_mode=1`le endpoint de l'API `index.php` retourne une `503`.
Si Matomo est derrière un load-balancer de type Haproxy, il faut rajouter la variable `multi_server_environment=1` pour que Matomo renvoie une `200`
Cela garantira que les mises à jour du schéma de base de données sont terminées dès que possible et sans erreurs de lecture/écriture simultanées.
Lorsque la mise à jour est terminé, **ne pas oublier de désactivé le mode maintenance et de réactivé le tracking.**
### Une fois la mise à jour terminée
Lorsque la mise à jour s'est terminé avec succès, il est recommander d'aller dans `Admin > Diagnostics > System check` et d'examiner les recommandations faite par Matomo.
Par exemple, la vérification de l'intégrité des fichiers peut indiquer qu'il reste des fichiers de la version précédente qui peuvent désormais être supprimés.