Matomo Tracker Proxy richtig einrichten / AdBlocker umgehen

Hi Leute,

ich habe ein paar Schwierigkeiten bei der Einrichtung des Matomo Tracker Proxys.

Vielleicht gibt es hier ja den ein oder anderen, der den Tracker Proxy auch im Einsatz hat und mir bei der Einrichtung weiterhelfen kann.

Hier meine aktuelle Konfiguration anhand eines Beispiels:

Zu trackende Domain: https://www_xyz_de
Pfad zum Matomo Tracking Proxy: https://www_xyz_de/matomo
Matomo Server: https://matomo_abc_de

  • Ich musste hier leider Unterstriche verwenden, da ich nur zwei Links nutzen darf!

In der config.php des Tracking Proxys von xyz.de ist folgendes eingetragen:

$PIWIK_URL = 'https://matomo.abc.de/';
$PROXY_URL = 'https://www.xyz.de/matomo/';
$TOKEN_AUTH = '3e…84';
$timeout = 5;
$user_agent = '';
$http_ip_forward_header = '';

Das Tracking Script von xyz.de sieht so aus:

<script type="text/javascript">
  var _paq = window._paq || [];
  _paq.push(["disableCookies"]);
  _paq.push(['enableHeartBeatTimer', 5]);
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);

  function embedTrackingCode() {
    var u="//www.xyz.de/matomo/";
    _paq.push(['setTrackerUrl', u+'piwik.php']);
    _paq.push(['setSiteId', '3']);
    var d=document,
    g=d.createElement('script'),
    s=d.getElementsByTagName('script')[0];
    g.type='text/javascript';
    g.async=true;
    g.defer=true;
    g.src=u+'piwik.php';
    s.parentNode.insertBefore(g,s);
  };

  setTimeout(function () {
    embedTrackingCode();
  }, 5);
</script>

So läuft es bei mir momentan und es scheint auch so zu funktionieren.

Jetzt möchte ich aber Matomo vor den AdBlockern noch ein wenig besser verschleiern.
Dafür möchte ich die RewriteEngine in der .htaccess nutzen, um die Proxy-Adresse zu verschleiern.

In diesem Fall, sieht das Tracking Script so aus:

<script type="text/javascript">
  var _paq = window._paq || [];
  _paq.push(["disableCookies"]);
  _paq.push(['enableHeartBeatTimer', 5]);
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);

  function embedTrackingCode() {
    var u="//www.xyz.de/matomo/";
    _paq.push(['setTrackerUrl', u+'testp']);
    _paq.push(['setSiteId', '3']);
    var d=document,
    g=d.createElement('script'),
    s=d.getElementsByTagName('script')[0];
    g.type='text/javascript';
    g.async=true;
    g.defer=true;
    g.src=u+'testj';
    s.parentNode.insertBefore(g,s);
  };

  setTimeout(function () {
    embedTrackingCode();
  }, 5);
</script>

Das Script ruft somit folgende URLs auf:
https://www_xyz_de/matomo/testp
https://www_xyz_de/matomo/testj

Und in der .htaccess Datei steht folgendes:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

# BEGIN Matomo
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^testp /matomo/piwik.php
RewriteRule ^testj /matomo/piwik.php
</IfModule>
# END Matomo

Das Problem ist nur, dass das so nicht funktioniert.

Die Regeln für die RewriteEngine sind alle korrekt.

Wenn ich das aber teste, macht mir WordPress hier wahrscheinlich einen Strich durch die Rechnung.

Weiß also irgendjemand hier vielleicht, wie ich die RewriteRules mit WordPress einrichten muss, damit diese funktionieren?

Hat jemand so eine Konfiguration schon laufen?

Vielen Dank!