Piwik ist eine Open Source Lösung um Zugriffe auf Websites zu loggen und zu analysieren. Dabei setzt Piwik sehr auf Datenschutz und anonymisiert schon im Auslieferungszustand die IP-Adressen der Besucher. Ebenfalls out-of-the-box unterstützt1 Piwik Do-not-Track Einstellungen. Und natürlich bleiben die Daten in der eigenen Datenbank. Bereits 2011 wurde Piwik vom Unabhängigen Landeszentrum für Datenschutz Schleswig-Holstein empfohlen. Das ULD hat damals auch Hinweise und Empfehlungen zu Piwik erstellt, die auch heute noch gut und richtig sind. Da lohnt sich der ein oder andere Blick, da wird man nicht dümmer von.
Das Webinterface ist außerdem richtig gut gelungen und lässt sich gut und flüssig bedienen.
Piwik ist mithin ein Neugiertool für Websitebetreiber, welches auch die datenschutzrechtlichen Aspekte der Besucher berücksichtigt. Gute Sache.
Ich hatte vor sehr viel Zeit Google Analytics eingesetzt und dann damals bei der Migration auf Octopress damit aufgehört und einen Eintrag names Piwik für instant-thinking.de auf meine ToDo-Liste gesetzt. Fast genau fünf Jahre später ist das jetzt auch schon fertig…
Die Anforderungen von Piwik passten nicht so ganz genau zu den aktuell standardmäßig vorhandenen Bedingungen bei Uberspace und daher schreibe ich im folgenden auf, wie ich Piwik im Februar 2017 auf Uberspace eingerichtet habe.
Piwik herunterladen
Als allererstes habe ich Piwik heruntergeladen. Ob man das letztlich in einer Subdomain2 oder in einem Unterordner haben möchte ist eigentlich recht egal.
Der Download funktioniert am leichtesten per wget https://builds.piwik.org/piwik.zip
im gewünschten Verzeichnis. Im Anschluss noch entpacken und die Datei How to install piwik.html
löschen.
Nach dem Aufruf der Piwik-URL hatte Piwik dann aber über die PHP-Version gemeckert…
PHP-Version anpassen
So wie im Uberspace-Wiki beschrieben lässt sich die PHP-Version über die Datei ~/etc/phpversion
einstellen. Nimmt man hier jedoch die von Piwik empfohlene 7er Version, wirft Piwik mit 500er Fehlern um sich. Daher stellt man am besten wie folgt die 5.6er Version ein:
1 2 3 |
|
Damit ist Piwik aber noch nicht grundsätzlich zufrieden. Zusätzlich muss eine eigene php.ini
in ~/etc/
angelegt werden3:
1
|
|
Und dort dann die folgende Option raussuchen und durch das entfernen des Semikolons aktivieren:
1
|
|
Zum Schluss den PHP-Interpreter mit killall php-cgi
neu starten. Damit ist PHP fertig konfiguriert. Die Systemprüfung sollte nun zufrieden sein:
MariaDB Datenbank erstellen
Piwik benötigt außerdem eine Datenbank. Entweder MySQL ab Version 5.5 oder den Nachfolger MariaDB. Auf Uberspace wird MySQL nur in der Version 5.1 angeboten. Glücklicherweise gibt es bis zum nächsten OS-Update eine4 Übergangslösung mit der MariaDB 10.0.
Die Benutzung dieser Übergangslösung hat zur Folge, dass es keinen direkten Zugriff auf die Backups der Datenbank gibt und dass die DB im Frühjahr 2017 noch mal auf die dann offizielle Lösung migriert werden muss.
Wenn das keine Showstopper sind feuert man einfach den Befehl uberspace-setup-mariadb
ab und schon wird eine neue MariaDB aufgesetzt. Die Verbindungsdaten werden in ~/.my.mariadb.cnf
abgelegt.
Um eine neue Datenbank für Piwik anzulegen wird nun die MySQL-Shell mit mysql --defaults-file=~/.my.mariadb.cnf
gestartet. Die anzulegende Datenbank muss mit eurem Uberspace-Accountnamen gefolgt von einem Unterstrich beginnen. Ein passendes Beispiel für den Accountnamen hugo wäre etwa mysql> CREATE DATABASE hugo_piwik;
.
Außerdem zu beachten ist, dass die Übergangslösung mit der loopback-IP und dem Port 33075 arbeitet. Damit Piwik den Port mitbekommt muss man ihn direkt nach dem Hostnamen, getrennt mit einem Doppelpunkt angeben. User und Passwort könnt ihr einfach aus eurer ~/.my.mariadb.cnf
abschreiben. Das ganze sollte dann ungefähr so aussehen:
Und das war es auch schon mit der grundsätzlichen Einrichtung, die restliche Basis-Installation geht ziemlich geradeaus vonstatten.
Previous Work
Als Grundlage für die erfolgreiche Installation von Piwik dienten mir vor allem die herausragend guten Dokumentationsseiten von Piwik und Uberspace. Die sind beide wirklich großartig gemacht. Außerdem halfen mir die Posts von Rob Tranquillo6 und intux7 sehr bei dem Einstieg in die Materie.
Ich hoffe, dass mein Post in dieser Tradition hilfreich sein kann. Wenn mein Piwik dann von der Übergangslösung weitergezogen werden muss werde ich dann auch wieder berichten.
Im nächsten Post wird außerdem die zweckmäßige Einbindung einer auf Octopress basierenden Website in Piwik erklärt.