Remplacer Google Analytics par Piwik
Le scandale autour de PRISM et de la NSA, la goûte qui fait déborder le vase, ma pousser à installer Piwik, je vous montre ici comment faire.
Pré-requis
Nous avons besoin d'un serveur NGINX, de PHP 5.3 minimum et de MySql. Pour l'installation de NGINX et de PHP sous Debian je vous invite à utiliser le script de Nicolargo , ou bien, mes scripts si vous êtes sous Ubuntu ou Raspbian (Raspberry Pi).Installation de MySql
sudo apt-get install mysql-server php5-mysql php5-gd
Création de la base de donnée de Piwik
mysql -u root -p
create database piwik character set utf8;
create user 'piwik'@'localhost' identified by 'MOTDEPASSE'; #mettre le mot de passe de votre choix
grant all privileges on piwik.* to 'piwik'@'localhost';
exit
Configuration de PHP
Si votre site a un trafic supérieur à 100 visites par jour, augmentez la taille maximale de RAM dédiée à PHP à au moins 128MO.
sudo vim /etc/php5/fpm/php.ini
#modifier la ligne ci-dessous
memory_limit = 128M
Téléchargement de Piwik
cd /var/www
wget http://builds.piwik.org/latest.zip
unzip latest.zip
Ensuite il faut changer les droits sur votre dossier piwik et son contenu. Dans mon cas (installation par scripts - voir Pré-requis) l'utilisateur qu'utilise NGINX est www-data.
chmod -R 770 /var/www/piwik
chown -R www-data:www-data /var/www/piwik
Configuration de NGINX
Il suffit de créer un nouveau virtualhoast en créant un fichier dans /etc/nginx/sites-enabled, avec le contenu ci-dessous :server {
listen 80;
server_name localhost;
root /var/www/piwik;
access_log /var/log/nginx/stats.access.log;
error_log /var/log/nginx/stats.error.log;
# Static
location / {
index index.html index.htm index.php;
}
# PHP scripts -> PHP-FPM server listening on 127.0.0.1:9000
location ~ \\.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
# Security
location ~ /\\.ht {
deny all;
}
location /version {
return 404;
}
location ~ /data/configuration/* {
return 404;
}
# Stuffs
location = /favicon.ico {
access_log off;
return 204;
}
location ~* ^.+\\.(jpg|jpeg|gif|css|png|js|xml)$ {
expires 30d;
#access_log off;
}
}
Remplacez localhost (ligne 3) par votre nom de domaine ou votre adresse IP.
Installation de Piwik
Commencez par redémarrer NGINX et PHP.
sudo service nginx restart
sudo service php5-fpm restart
... , puis connectez vous sur le Piwik avec un navigateur web. Il suffit de dérouler les écrans d'installation. Piwik vous demandera d'indiquer le nom de la base de données (piwik) ainsi que l'utilisateur et son mot de passe (piwik / MOTDEPASSE).
A la fin de l'installation, Piwik vous affichera le code à ajouter au thème de votre site qui lui permettra de remonter les statistiques. Ajoutez simplement ce code par copier/coller entre les balises <head> ... </head> de votre thème.
Optimisation pour les trafics moyens ou élevés
Si vous avez plus de 100 visiteurs par jour, il est conseillé de désactiver l'archivage automatique des données à l'ouverture du tableau de bord de Piwik. Ceci permet de ne pas surcharger les ressources du serveur.
Pour ce faire connectez vous à Piwik, et aller dans Paramètres (en haut à droite). Puis cliquer sur Paramètre généraux. Enfin, choisir Non pour la première options (Autoriser l'archivage...) et indiquer 3600 secondes pour l'option suivante (Rapports du jour...).
L'archivage automatique étant désactivé, il faut maintenant créer une tâche cron pour lancer le script d'archivage automatiquement 1 fois par jour à 4h du matin. Ainsi vous aurez le lendemain les statistiques de la veille.
sudo crontab -e
# ajouter les lignes ci-dessousMAILTO="test@mail.fr"
00 04 * * * /var/www/piwik/misc/cron/archive.sh > /dev/null
La variable MAILTO permet à cron de vous envoyer les erreurs liées aux tâches qu'il exécutera.
Site officiel : piwik.org
Un article à retrouver sur P3ter.fr