Analytics
Wie jeder für eine Website Verantwortlicher möchte ich auch gerne wissen, welche Seiten besucht werden. Dafür wurde früher gerne das Log-File des Servers analysiert. Das große Problem bei dieser Methode liegt allerdings dabei, dass man nicht nur Besucher zählt, sondern auch Aufrufe von Bots und Crawlern. Das Problem lässt sich mittlerweile recht einfach lösen, da Bots und Crawler so gut wie nie Javascript laden und ausführen. Schnell entstanden Lösungen wie Google Analytics oder die Open Source Lösung Matomo.
Diese Lösungen brachten aber wieder neue Probleme mit sich. So verwenden fast alle Lösungen langlebige Cookies, die aber nicht wirklich datenschutzfreundlich sind. Damit ich trotzdem ein paar Informationen über meine Besucher erhalte, habe ich mich von der Lösung auf www.indielytics.link inspirieren lassen. Bei jedem Aufruf wird der aufgerufene Pfad per Javascript an den Server gesendet. Dort wird aus den Daten der Anfrage (IP, UserAgent) und dem aktuellen Datum ein eindeutiger Wert (ein Hash) berechnet. Dein heutiger Hash sieht so aus:
dd8e1ceb839c50bd117fd16a52a0916e20e4d2d40cf49c218f22f6686bca4941
Aus diesem Hash lassen sich die Daten aus der Anfrage nicht mehr zurückrechnen. Zusammen mit dem Hash wird der aufgerufene Pfad gespeichert. Nach 7 Tagen werden die Daten automatisch gelöscht. Mit diesen Daten können nun einige Auswertungen durchgeführt werden.
Übersicht der letzten Tage
Eindeutige Besucher
Meistbesuchte Seiten
Das sieht auf den ersten Blick ja schon mal ganz gut aus, aber warum nutzen dann nicht alle Seiten so ein System? Wie jede Lösung hat auch diese Lösung Nachteile. Der größte Nachteil liegt hierbei in der eindeutigen Identifizierung der Besucher. Zurzeit gibt es zwei verschiedene IP-Adressen (IP Version 4 und IP Version 6). Da die IPv4 Adressen langsam zur Neige gehen, versuchen einige Internet Provider IPv4 Adressen zu sparen, in dem sie Carrier-grade NAT nutzen. Das führt dazu, dass mehrere Besucher dieselbe IP-Adresse haben und als ein eindeutiger Besucher gezählt werden. Besucher mit IPv6 Adresse besuchen diese Seiten zum Teil mit unterschiedlichen IP-Adressen, da diese rotiert werden. Dies führt dazu, dass ein Besucher eventuell mehrfach gezählt wird.
Perfekt ist diese Lösung also nicht. Aber da ich keine Lösung mit Cookies haben wollte, ist das schon mal eine bessere Lösung.