Piwik et Ghostery (ou adblock)

Hello à tous 🙂

Ghostery est une extension très pratique, je l’utilise moi même tous les jours, elle permet de bloquer les trackers sur les différents site visités par l’internaute. Le problème c’est que par défaut Ghostery filtre aussi Piwik, hors généralement un Piwik tourne sur le même serveur que le site visité c’est pourquoi je trouve l’idée de le bloquer un peu stupide. Sur ce blog il n’y a aucun tracker externe, seulement Piwik (qui anonymise les adresses IPs) vous pouvez d’ailleurs choisir de le désactiver sur cette page. Il reste néanmoins l’utilisation du CDN de Google pour charger JQuery (promis je l’enlèverais !).

Il est possible de charger Piwik mal-grès l’utilisation de Ghostery (ou Adblock) sur le navigateur de l’internaute.

Dis Silent comment fait ça ??? hein dit comment on fait les bébés ???

Pour les bébés je t’invite à demander à tes parents … ils t’ont bien fait toi 😀

Bref revenons à notre Piwik, dans un premier temps il va falloir changer le nom des fichiers de Piwik (ceux chargés via le javascript du site utilisant Piwik).

Pour ça nous allons utilisés des liens symboliques afin de ne pas « casser » Piwik. imaginons donc que votre installation de Piwik se situe dans « /var/www/piwik/ » il va falloir faire des liens symbolique de piwik.js et de piwik.php en effet ce sont les fichiers utilisés pour le « tracking », choisissez un nom de fichier au hasard (et retenez le bien-sure) par exemple dans votre console SSH :

Remplacez « nom_au_hasard » par le nom choisit, ça peut être poney, lama, chuck_norris … peut importe.

Il va falloir également modifier la config du serveur web pour accepté l’exécution de « nom_au_hasard.php ».

Pour ce faire dans Nginx il faut rajouté le nom du fichier dans le block qui gère les scripts PHP comme ceci :

Mais pourquoi faire un liens symbolique et ne pas simplement copier/coller les fichiers ?

Oui, ça fonctionnerait aussi MAIS il faudrait le refaire à chaque mise à jour de Piwik … ce n’est pas super pratique, non ?

Et c’est tout ?? et tu veux vraiment pas répondre pour les bébés ? STP STP STP !!! 🙁

Ok, je vais juste ignorer la seconde partie de la question :D.

Pour Piwik ce n’est pas tout il va falloir modifier le javascript, déjà pour utiliser les nouveaux fichiers créés et aussi pour charger Piwik même si un plugins du navigateur le détecte. Ce que l’on va faire c’est utiliser « try » et « catch » en javascript, dans le try nous allons donc essayer de charger Piwik normalement et si un exception se déclenche nous chargeront une simple image (qui permet d’avoir des stats mais moins avancés qu’avec le javaScript).

Voici donc le code javaScript a insérer dans vos pages :

Mettez ce bloc de code dans un <script></script> vous pouvez bien-sur également le mettre dans un fichier .js a part :p, il va tenter de charger Piwik normalement via nos nouveaux fichier et si il n’y arrive pas il va juste charger « nom_au_hasard.php » comme une image invisible.

Enfin vous pouvez ajoutez un <noscript></noscript> comme ceci :

Même si personne aujourd’hui n’utilise de navigateur sans javaScript (ah BONNNNNNNNNNNNN ? :o).

Voili voilou, bisou chez vous !

Vous avez aimé cet article ? Partagez-le :)

Facebook Google Plus Twitter Linkedin email

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *