Flowsery Analytics mit Caddy proxyen
Leiten Sie Flowsery Analytics über Caddy weiter, um Störungen durch Adblocker zu vermeiden und genauere Besucherdaten zu erfassen. Dank der unkomplizierten Konfiguration von Caddy lässt sich das besonders einfach einrichten.
1. Caddy-Basiskonfiguration
Fügen Sie Ihrem Caddyfile die folgenden Direktiven hinzu:
your_domain.com {
# Proxy the analytics script
handle /js/main.js {
reverse_proxy https://analytics.flowsery.com {
header_up Host {upstream_hostport}
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Proto {scheme}
}
# Cache the script for 1 year
header Cache-Control "public, max-age=31536000"
header Expires "1y"
}
# Proxy the event collection endpoint + forward real visitor IP
handle /api/track {
reverse_proxy https://analytics.flowsery.com {
header_up Host {upstream_hostport}
# CRITICAL: Flowsery reads this header as the real visitor IP.
# Without it, every visitor resolves to your server's region.
# Replace {remote_host} with {http.request.header.Cf-Connecting-Ip}
# if Caddy sits behind Cloudflare.
header_up x-flowsery-real-ip {remote_host}
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Proto {scheme}
}
}
# Your other site directives...
}Hinweis: Wenn Ihr Server bereits einen Pfad /api/track nutzt, fügen Sie dem Flowsery-Analytics-Skript data-api hinzu, um Events an einen anderen Pfad zu senden. Zum Beispiel leitet data-api="/flowsery-events" Daten an /flowsery-events weiter.
Wichtig: Wenn im Dashboard jeder Besucher aus demselben Ort zu kommen scheint, prüfen Sie, ob x-flowsery-real-ip beim Weiterleiten an den Flowsery-Analytics-Endpunkt /events wirklich auf die echte Besucher-IP gesetzt wird und nicht auf die IP des Proxy-Servers.
2. Optional: Caching aktivieren
Für eine bessere Performance können Sie eine Caching-Schicht ergänzen:
your_domain.com {
# Cache settings
cache {
path /var/cache/caddy
ttl 1y
capacity 10GB
}
handle /js/main.js {
cache
reverse_proxy https://analytics.flowsery.com {
header_up Host {upstream_hostport}
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Proto {scheme}
}
header Cache-Control "public, max-age=31536000"
header Expires "1y"
}
# ... remainder of the configuration
}3. Skript-Tag anpassen
Ersetzen Sie das ursprüngliche Flowsery-Analytics-Snippet durch die geproxyte Variante:
<script defer data-fl-website-id="flid_******" src="/js/main.js"></script># Validate the configuration
caddy validate
# If validation passes, reload Caddy
caddy reloadPrüfen, ob es funktioniert
So validieren Sie das Proxy-Setup:
- Rufen Sie Ihre Website auf.
- Öffnen Sie die Entwicklerwerkzeuge Ihres Browsers und wechseln Sie zum Tab "Network".
- Prüfen Sie, ob Analytics-Requests über Ihre Domain statt über
analytics.flowsery.comausgeliefert werden.
Caddy verwaltet HTTPS-Zertifikate und HTTP/2 automatisch, was ihn zu einer starken Wahl für Analytics-Proxys macht. Wenn Sie das Cache-Setup aktivieren, stellen Sie sicher, dass auf dem Server genügend Speicherplatz vorhanden ist.
Fehlerbehebung
Jeder Besucher scheint aus demselben Ort zu kommen
Wenn alle Besucher aus einer einzigen geografischen Region erscheinen (typischerweise aus der Region Ihres Servers), leitet der Proxy die echte Besucher-IP nicht korrekt weiter.
Lösung:
- Stellen Sie sicher, dass Ihr Proxy
x-flowsery-real-ipbeim Weiterleiten an den Flowsery-Analytics-Endpunkt/eventsauf die tatsächliche Besucher-IP setzt und nicht auf die Server-IP. - Wenn Caddy hinter Cloudflare oder einer anderen Edge läuft, ist
{remote_host}die IP dieses Upstream-Proxys und nicht die des Besuchers. Verwenden Sie stattdessen{http.request.header.Cf-Connecting-Ip}(Cloudflare) oder{http.request.header.X-Real-Ip}(generisch).