Globale Liste ignorierter IPs Alternative

Nachdem ich über fast 10 Jahre eine fixe IP hatte, weil Vodafone Kabel DSL das so handhabt, aber nur wegen Umzug zwangsweise einen anderen Provider nutzen muss bei dem ich nun keine fixe IP mehr habe, muss ich bei jedem Wechsel der IP diese in den Einstellungen zu den ignorierten IPs hinterlegen. Dass das ärgerlich ist, ist selbstredend.

Die Frage wäre nun also, ob sich das nicht anders regeln ließe. Nachdem ich auch für andere Zwecke eine alternative Lösung für die IP gebraucht habe, wäre es genial, wenn sich das auch für Matomo machen ließe. Für diesen Zweck hab ich mir ein Firefox Add-on installiert mit dem ich einen custom Request Header setzen kann. Ich authentifiziere mich also nicht mehr über die IP, sondern über einen bestimmten Header, was mind. genauso sicher ist. Ich könnte das mit PHP zwar auch so mit Matomo so machen, aber ich verwende einen HTTP Fullpage Cache auf meinem Server, sodass ich diese Lösung ausschließen muss.

Hat jemand eine Ahnung, ob man das Code-seitig in Matomo irgendwie machen könnte?

Hast du den Tag Manager im Einsatz ?

Bzw. unter Einstellungen → Persönlich → Einstellungen könntest du das Cookie setzen lassen.

Nein, hab ich nicht.

Das mit dem Cookie wäre eine denkbare Lösung und vielleicht auch nicht mal so schlecht, wenngleich bedingt umständlich. Ideal wäre natürlich das mit dem Request Header, weil bequemer! :slight_smile:

[Update]

Grad mal ausprobiert, aber funzt nicht.

“(das Matomo-Cookie zum Ignorieren von Besuchen wurde nicht in Ihrem Browser gefunden)”

Eine Idee wäre gewesen mit eigenem JS z.B über den Tag Manager den Header auszulesen und den Trigger pageview nicht zu feuern.

Also Tag Manager Variable mit response.headers.get(
Und die Variable als Bedingung im Pageview Trigger.

Geht natürlich ohne Tag Manager auch ….

Von der Idee her war ich auch schon so weit, aber getResponseHeader und getAllResponseHeaders sind Methoden des XMLHttpRequest Objects und stehen für den Initial Request nicht zur Verfügung.

Ich habs jetzt ganz anders gelöst und mir das x-te UA Switcher Addon installiert, um dann mit den onBoard Funktionen von Matomo meinen custom UA vom tracken auszuschließen, jedoch begrenzt auf bestimmte Domains.

So, ganz neue Lösung, weil das mit dem UA Switcher Addon nicht so funktioniert hat. Dieses Addon an sich funktioniert zwar, allerdings überschreibt der damit eingestellte UA auch den UA, der variabel für verschiedene Bildgrößen/Devices gesetzt wird. Nachdem ich diese Funkton zur Webentwicklung aber brauche, ist das zumindest für mich dann doch keine Lösung.

Nichtsdestotrotz hab ich dann ein Firefox Addon gefunden, womit man Domain abhängig einen Custom Request Header setzen kann. Über die .htaccess definiere ich mit einem custom Header eine Rewrite Condition und falls diese erfüllt ist, setze ich über die .htaccess den ansonsten von Matomo generierten Cookie, der letztlich dazu dient, um vom Tracken ausgeschlossen zu werden. Ich könnte diese Cookie Exclude Funktion zwar ohne zusätzlichen Ergänzungen in der .htaccess nutzen, aber meine Cookies werden beim Löschen des Browsers automatisch gelöscht, weshalb ich mich erst in Matomo einloggen müsste, um mir diesen besagten Cookie setzen zu lassen. Das geht auch manuell und ohne vorherigen Login. Diese Lösung kann man deshalb auch universal verwenden und nicht nur für meinem Fall.

Praktisch sieht das dann so aus.

1.) Firefox Addon “Modify Header Value” https://addons.mozilla.org/de/firefox/addon/modify-header-value/ installieren, das es auch für den Chrome Browser gibt: https://chrome.google.com/webstore/detail/modify-header-value-http/cbdibdfhahmknbkkojljfncpnhmacdek

2.) Einen custom Header mit diesem Addon anlegen.

3.) Folgende rewrite Regel in der .htaccess anlegen.

RewriteCond %{HTTP:headername} ^headerwert$ [NC]
RewriteRule ^.*$ - [ENV=MATOMOIGNORE:true]
Header add Set-Cookie "matomo_ignore=ignore%3DKg%3D%3D; path=/; secure;SameSite=None" env=MATOMOIGNORE

4.) That’s it. Der Cookie wird automatisch gesetzt, allerdings nur bei denjenigen Usern, die den vorher definierten Custom Request Header senden, also quasi nur Du und sonst niemand.

1 Like

Interessanter Ansatz. Danke fürs sharren

Neee, das ist kein nur Ansatz. Es funktioniert vollumfänglich. :slight_smile:

Diese Lösung löst sich auch dafür nutzen, um die eigenen Aufrufe aus der access_log auszuschließen.

SetEnvIf Cookie "matomo_ignore=ignore%3DKg%3D%3D" dontlog
1 Like