Installation de Matomo sur Apache
Pour utiliser la solution Matomo, soit vous l’hébergez vous-même sur votre propre serveur, que ce soit un serveur dédié ou mutualisé, soit vous l’utiliser en mode Saas. En effet, votre instance de Matomo sera hébergée par Innocraft, et le tarif dépend principalement du nombre de sites à gérer et du nombre de pages vues par mois.
Dans notre cas, on s’intéresse à l’utilisation en mode self-hosted où l’on va déployer Matomo sur un serveur web Apache, sous Debian, avec le moteur MySQL pour la base de données.
Pour commencer, connectez-vous en shell sur votre serveur (console ou SSH).
Sommaire
I. Installation des paquets
Les recommandations de Matomo sont les suivantes pour la mise en place de Matomo :
- Un serveur web (Apache, Nginx, IIS, etc.)
- PHP en version 5.5.9 minimum, recommandé PHP 7
- MySQL 5.7 minimum ou MariaDB
- Activer les extensions PHP "pdo" et "pdo_mysql"
Commencez par installer les paquets nécessaires :
sudo apt-get update
sudo apt-get install apache2 mysql-server php7.0 php7.0-curl php7.0-gd php7.0-cli php7.0-mysql php-xml php7.0-mbstring
Nous allons maintenant préparer la partie base de données.
II. Créer une base de données pour Matomo
Pour installer l’application Matomo sur son serveur, pour des raisons de sécurité, il est recommandé d’utiliser un utilisateur dédié dans MySQL pour la base de données de Matomo.
Connectez-vous à MySQL :
$ mysql -u root -p
Créer la base de données « DB18_MATOMO » :
$ MariaDB > CREATE DATABASE DB18_MATOMO;
On va créer un utilisateur, nommé « matomo » qui aura des droits sur la base de données dédiée à Matomo :
$ MariaDB > CREATE USER 'matomo'@'localhost' IDENTIFIED BY 'YourM@gicPasSword';
Donnons maintenant les droits à cet utilisateur. Nous pouvons lui donner tous les droits sur la base de données Matomo, ou se contenter de donner les droits selon les recommandations officielles de Matomo. C’est ce que nous allons faire :
$ MariaDB > GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON DB18_MATOMO.* TO 'matomo'@'localhost';
La configuration étant terminée, fermez la connexion MySQL :
$ MariaDB > exit
Maintenant, passons à la mise en place de l’application sur le serveur web Apache.
III. Mettre en place Matomo sur Apache
On va télécharger l’archive ZIP de Matomo à la racine de notre serveur web et l’extraire. Saisissez cet enchaînement de commandes :
cd /var/www && wget https://builds.piwik.org/piwik.zip && unzip piwik.zip
Si l’extraction a fonctionné, supprimez le fichier ZIP :
rm piwik.zip
L’utilisateur par défaut de Apache étant « www-data » on va lui donner la propriété du dossier « piwik » et de son contenu :
chown www-data:www-data piwik -R
Avant de se lancer dans l’installation, il faut préparer le VirtualHost pour Matomo dans la configuration d’Apache.
nano /etc/apache2/sites-available/matomo.conf
On va créer un site qui écoute sur le port 80 (*:80), en http donc, et on va indiquer que la racine est « /var/www/piwik » (DocumentRoot). Le nom de domaine associé est « stats.it-connect.fr » (ServerName / ServerAlias) c’est-à-dire que lorsqu’Apache sera interrogé avec ce nom de domaine il fera correspondre à cette configuration VirtualHost. Voici le contenu du fichier « matomo.conf » :
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName stats.it-connect.fr
DocumentRoot "/var/www/piwik"
DirectoryIndex index.html index.htm index.php default.php
ServerAlias stats.it-connect.fr
RewriteEngine On
<Directory "/var/www/piwik">
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Activez le nouveau site avec la commande a2ensite prévue pour cela :
a2ensite matomo.conf
Avant de recharger la configuration Apache, activez le module « rewrite » pour la réécriture des URL :
a2enmod rewrite
Rechargez la configuration d’Apache pour prendre en compte le nouveau site :
systemctl reload apache2
Normalement, il ne devrait pas y avoir d’erreurs au redémarrage. Vous pouvez vous rendre sur l’interface d’installation maintenant : http://stats.it-connect.fr
IV. Installer Matomo
Depuis votre navigateur, vous devez accéder à cette interface suite à la mise en place de la configuration précédente. Cliquez sur « Suivant ».
La première étape consiste à vérifier que les prérequis sont bien respectés, s’il y a un blocage, il vous faudra le corriger avant de poursuivre. Si vous avez bien installé les paquets indiqués, ça doit passer.
L’installeur va devoir alimenter la base de données de Matomo. Il est temps d’indiquer les valeurs correspondantes à notre serveur de bases de données.
Le serveur sera l’hôte local donc « 127.0.0.1 », puis indiquez les autres informations en fonction des valeurs indiquées lorsque l’on a configuré la database.
Si vos informations de connexion sont correctes, la création de la structure de la base de données sera réalisée avec succès.
Vous devez maintenant configurer un compte utilisateur « super-admin » pour Matomo. Afin de sécuriser ce compte, je vous encourage à sécuriser à la fois le login, et le mot de passe. Autrement dit, évitez le classique « admin » ou « matomo » comme identifiant (pas comme sur ma copie d'écran).
L’installation de Matomo est désormais terminée, mais l’assistant nous propose directement de paramétrer notre premier site. Je vous propose de suivre ces étapes dans le prochain chapitre.