Dorian Fevrier's blog - Mot-clé - 1and1Je m’appelle FEVRIER Dorian, je suis infographiste 3D passionné par mon métier, l’informatique en général, l’internet, la programmation et l’évolution de tout ce petit monde. Vous trouverez sur ce blog des tutoriaux, mes coups de cœurs, avis, etc.2024-01-02T23:48:05+01:00FEVRIER Dorianurn:md5:695d9c73474c33ce3dab043823509c4bDotclear1and1, Dotclear et Piwik: Modifier la version de PHP utilisée et installer Piwikurn:md5:a4a4536bf426a8ce84ccbdd9cdd60f9b2010-01-31T23:05:00+01:002013-07-26T22:33:35+02:00NarannMes coups de coeur1and1blogdotclearfiltrefrinstallipphppiwikstatsversion<p><img src="https://www.fevrierdorian.com/blog/public/billets/2010_install_piwik/piwik_tn.png" alt="piwik_tn.png" style="float:left; margin: 0 1em 1em 0;" title="piwik_tn.png, fév. 2010" height="150" width="150" />Bonjours à tous! Ça fait un petit moment que j'entends parler de <a href="http://piwik.org">Piwik</a>. Piwik est une interface d'analyse de statistiques de site web. Il permet de calculer le nombre de visiteur, le nombre de page vu, etc... Il n'est pas comme <a href="http://www.atinternet.com/Produits/Solutions-XiTi.aspx">Xiti</a> (ou l'outil de stat n'est pas hébergé chez vous) mais il s'installe (<a href="http://piwik.org/docs/installation/">très facilement</a>) directement sur votre serveur. Étant chez <a href="http://www.1and1.fr">1and1</a>, il existe déjà un outil de statistique mais celui ci n'est pas terrible et assez lent. Étant donné qu'il existe un <a href="http://plugins.dotaddict.org/dc2/details/Piwik">plugin Piwik</a> pour <a href="http://fr.dotclear.org">dotclear</a>, je me suis décidé à franchir le pas. Seul problème, <a href="http://piwik.org/docs/requirements/">il nécessite PHP 5.1.3</a> pour fonctionner. Et il m'afficha lors de l'installation un joli message d'erreur comme quoi il fallait que j'ai PHP 5.1.3 d'installé...</p> <h5>Installation</h5>
<p>Déjà, pour installer Piwik, ce n'est vraiment pas compliqué. Vous allez sur <a href="http://piwik.org/" hreflang="en">le site officiel</a>, vous téléchargez la dernière version de Piwik, vous la dézippé et vous placez le dossier "piwik" à la racine de votre serveur.</p>
<p>Vous y allez ensuite (par exemple monserveur.com/piwik) et il vous posera deux trois questions et s'installera sans (trop) problèmes...</p>
<h5>Le problème avec PHP 5</h5>
<p>...sauf quand votre serveur est en PHP 4, ce qui est le cas des serveurs mutualisé de 1and1.
<img src="https://www.fevrierdorian.com/blog/public/logos/elephpant-elephant-php-logo_1_.png" alt="elephpant-elephant-php-logo_1_.png" style="display:block; margin:0 auto;" title="elephpant-elephant-php-logo_1_.png, janv. 2010" height="255" width="397" />
Quand vous utilisez un serveur chez vous en local, vous avez tout pouvoirs dessus et donc vous pouvez facilement modifier votre version de PHP. Mais sur un hébergement mutualisé, on peut dire que vous l'avez dans l'os. :baffed:</p>
<p>En effet vous n'avez pas possibilité de modifier la configuration du serveur mutualisé (et au final: Encore heureux! Si tous le monde le pouvait, les serveurs ne tiendrait pas longtemps :sourit: ).</p>
<p>Seulement tout ça me semblait très louche... La version 4.4.9 <a href="http://www.php.net/archive/2008.php#id2008-08-07-1" hreflang="en">à été lancé en Aout 2008</a> et date un peu, ça me paraissait fou, à l'heure ou l'<a href="http://www.nexen.net/articles/dossier/18064-php_6_:_ca_marche_et_ca_va_vite.php" hreflang="fr">on parle déjà de PHP 6</a> qu'un hébergeur n'offre aucune solution pour passer en PHP 5...</p>
<p>Mais voila, en fouillant un peu dans la FAQ de 1and1 (très mal faite mais assez complète, on ne lui demande pas plus), j'ai trouvé <a href="http://faq.1and1.fr/scripts/php/5.html" hreflang="fr">la solution</a>:</p>
<ul>
<li>Il faut créer un fichier ".htaccess" à la racine du dossier dans lequel ou souhaite utiliser PHP 5 (en ce qui me concerne, c'est le dossier "piwik") et y mettre écrire ça:</li>
</ul>
<pre>
AddType x-mapp-php5 .php
</pre>
<p>Dorénavant, tout les fichier .php seront interprété en PHP 5. La classe quand même :laClasse:</p>
<h5>Piwik</h5>
<p><img src="https://www.fevrierdorian.com/blog/public/logos/piwik_logo_1_.png" alt="piwik_logo_1_.png" style="display:block; margin:0 auto;" title="piwik_logo_1_.png, janv. 2010" height="100" width="100" />
Comme c'est si bien dit sur le site officiel:</p>
<blockquote><p>Piwik aims to be an open source alternative to Google Analytics.</p></blockquote>
<p>Rien que ça :sourit:</p>
<p>Une fois Piwik installé, on pourrait installer le plugin Piwik pour Dotclear dont je parlais tout à l'heure.</p>
<p>On "pourrait" en effet... Car chez moi ça n'a pas marché! :baffed: En effet j'ai un gros:</p>
<pre>
Socket (0)
</pre>
<p>Quand j'essaie de le configurer via l'interface. Bon, je décide de faire ça manuellement.</p>
<p>Pour ça, il faut insérer un petit javascript qui s'affichera dans toute les pages du site. Ce code vous est donné à la fin de votre installation de Piwik. Si vous l'avez perdu, il suffit, dans votre interface Piwik, d'aller dans "Paramètres" (en haut à droite), onglet "Site" puis "Afficher le code".</p>
<p>Comme on est sur un site dynamique, la solution la plus simple pour ce genre de manipulation est d'insérer ça dans le "footer" ou le "header" (ce sont les zones tout en haut et tout en bas d'un site).</p>
<p>Sur Dotclear il faut aller dans de Tableau de bord:
<img src="https://www.fevrierdorian.com/blog/public/billets/2010_install_piwik/tableau_de_bord.png" alt="tableau_de_bord.png" style="display:block; margin:0 auto;" title="tableau_de_bord.png, janv. 2010" height="118" width="169" />
Apparence du blog:
<img src="https://www.fevrierdorian.com/blog/public/billets/2010_install_piwik/apparence_du_blog.png" alt="apparence_du_blog.png" style="display:block; margin:0 auto;" title="apparence_du_blog.png, janv. 2010" height="118" width="176" />
Éditeur de thème:
<img src="https://www.fevrierdorian.com/blog/public/billets/2010_install_piwik/editeur_de_theme.png" alt="editeur_de_theme.png" style="display:block; margin:0 auto;" title="editeur_de_theme.png, janv. 2010" height="159" width="217" />
Et selectionner "_footer.php":
<img src="https://www.fevrierdorian.com/blog/public/billets/2010_install_piwik/select_footer.png" alt="select_footer.png" style="display:block; margin:0 auto;" title="select_footer.png, janv. 2010" height="99" width="168" /></p>
<p>Ici, après:</p>
<pre>
{{tpl:SysBehavior behavior="publicFooterContent"}}
</pre>
<p>Il ne reste plus qu'a insérer votre code javascript derrière cette ligne.</p>
<p>Maintenant Piwik devrait commencer à afficher les visiteurs. Testez! :banaeyouhou:</p>
<h5>Filtrer son IP</h5>
<p>Le problème, vous vous en rendrez compte assez vite est que sur votre blog, vous avez peu de visite et que finalement, vous-même affichez plus de page que vos visiteur (je sais, c'est la loose... :triste: ).</p>
<p>Donc, si vous voulez pouvoir "filtrer" votre IP afin que Piwik ne considère pas vos visite comme de "vraix" visites, il faut "péachpéter" (haha je ris tout seul de ma minable blague...).</p>
<p>En gros, on va demander à dotclear de n'afficher le code javascript que si l'IP est différente de la votre. En PHP, la commande pour connaitre l'IP du "demandeur", c'est:</p>
<pre>
$_SERVER["REMOTE_ADDR"] //Qui renvoit une adresse ip sous la forme 55.98.165.77, au pif ici
</pre>
<p>Donc une petite boucle du genre:</p>
<pre class="php php"><span style="color: #000000; font-weight: bold;"><?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">(</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">[</span><span style="color: #0000ff;">"REMOTE_ADDR"</span><span style="color: #009900;">]</span> <span style="color: #339933;">!=</span> <span style="color: #0000ff;">"55.98.165.77"</span><span style="color: #009900;">)</span> <span style="color: #009900;">{</span> <span style="color: #000000; font-weight: bold;">?></span>
<!-- Javascript Piwik -->
<span style="color: #000000; font-weight: bold;"><?php</span> <span style="color: #009900;">}</span> <span style="color: #000000; font-weight: bold;">?></span></pre>
<p>Alala... Si c'était aussi simple... :gniarkgniark:</p>
<p>Et oui! Dotclear n'exécute pas de code PHP de template (ce qu'on fait) par défaut. il faut aller l'autoriser dans about:config:
<img src="https://www.fevrierdorian.com/blog/public/billets/2010_install_piwik/aboutconfig.png" alt="aboutconfig.png" style="display:block; margin:0 auto;" title="aboutconfig.png, janv. 2010" height="78" width="131" />
Puis mettre tpl_php_allow sur "oui":
<img src="https://www.fevrierdorian.com/blog/public/billets/2010_install_piwik/tpl_php_allow.png" alt="tpl_php_allow.png" style="display:block; margin:0 auto;" title="tpl_php_allow.png, janv. 2010" height="76" width="313" />
Voila, Piwik ne devrait plus comptabiliser vos visites! :sourit:</p>
<p>Si vous souhaitez ajouter une IP, la boucle ressemblera à ça:</p>
<pre class="php php"><span style="color: #000000; font-weight: bold;"><?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">(</span> <span style="color: #009900;">(</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">[</span><span style="color: #0000ff;">"REMOTE_ADDR"</span><span style="color: #009900;">]</span> <span style="color: #339933;">!=</span> <span style="color: #0000ff;">"55.98.165.77"</span><span style="color: #009900;">)</span> <span style="color: #339933;">&&</span> <span style="color: #009900;">(</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">[</span><span style="color: #0000ff;">"REMOTE_ADDR"</span><span style="color: #009900;">]</span> <span style="color: #339933;">!=</span> <span style="color: #0000ff;">"55.98.165.78"</span><span style="color: #009900;">)</span> <span style="color: #009900;">)</span> <span style="color: #009900;">{</span> <span style="color: #000000; font-weight: bold;">?></span>
<!-- Javascript Piwik -->
<span style="color: #000000; font-weight: bold;"><?php</span> <span style="color: #009900;">}</span> <span style="color: #000000; font-weight: bold;">?></span></pre>
<p>En espérant que ce billet vous soit utile...</p>
<p>Amusez vous bien! ;)</p>
<p>Dorian</p>