ich bin neu hier und habe eine Frage bezüglich Matomo und dem Tracking verschiedener Docker Container sowie deren Webseiten. Zu meiner Konfiguration: Ich leite alle Seiten über meinen Container “Nginx Proxy Manager” weiter bzw. lasse sie von außen abrufen. Auch Matomo läuft bei mir als Docker Container über einen CNAME-Eintrag, ebenfalls über den NPM.
Nun möchte ich den Container “Gramps” tracken, kann jedoch nicht einfach in den Container eingreifen. Kennt jemand eine Möglichkeit, dies über eine Art weiteren Proxy zu tun oder einen Weg, ohne eine Index.html oder Index.php zu bearbeiten?
Servus, ich möchte gerne meine Lösung teilen, wie man eine Seite hinter dem Nginx Proxy Manager tracken kann, ohne die index.html oder index.php bearbeiten zu müssen.:
location / {
proxy_set_header Accept-Encoding "";
proxy_pass https://backend:port; # <---------- Hier die Adresse und den Port des Backends eintragen
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_set_header Connection "Keep-Alive";
proxy_set_header Proxy-Connection "Keep-Alive";
# Matomo tracking code
sub_filter "</head>" "<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like 'setCustomDimension' should be called before 'trackPageView' */
_paq.push(['setDocumentTitle', document.domain + '/' + document.title]);
_paq.push(['setCookieDomain', '*.your.dns.name.com']);// <---------- hier euren Nginx-DNS-Zielname einfügen
_paq.push(['setDomains', ['*.your.dns.name.com']]);// <---------- hier euren Nginx-DNS-Zielname einfügen
_paq.push(['enableCrossDomainLinking']);
_paq.push(['setDoNotTrack', true]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u='//matomo.your.dns.name.com/';
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '99']); // <---------- Hier die SiteID einfügen
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script></head>";
sub_filter_once off;
}
Bitte ersetzt “backend:port” durch die Adresse und den Port eures Backends. Außerdem ersetzt “your.dns.name.com” durch eure eigene DNS-Adresse und tragt die entsprechende SiteID ein.