Flowsery Analytics mit Vue.js proxyen
Leiten Sie Flowsery Analytics über Ihren Vue.js-Entwicklungsserver weiter, um Störungen durch Adblocker zu vermeiden und genauere Besucherdaten zu erfassen.
1. Vue.js-Dev-Server-Proxy einrichten
Wenn Sie Vue CLI verwenden, aktualisieren Sie Ihre vue.config.js mit den folgenden Proxy-Regeln:
module.exports = {
devServer: {
proxy: {
'/js/main.js': {
target: 'https://analytics.flowsery.com',
changeOrigin: true,
pathRewrite: {
'^/js/main.js': '/js/main.js',
},
},
'/api/track': {
target: 'https://analytics.flowsery.com',
changeOrigin: true,
pathRewrite: {
'^/api/track': '/analytics/events',
},
},
},
},
};Hinweis: Wenn Ihr Projekt bereits eine Route /api/track hat, fügen Sie dem Flowsery-Analytics-Skript data-api hinzu, um Event-Daten an einen anderen Pfad zu senden. Zum Beispiel leitet data-api="/flowsery-events" Daten an /flowsery-events statt an /api/track.
2. Produktionskonfiguration: Webserver-Setup
Nginx
location /js/main.js {
proxy_pass https://cdn.flowsery.com/main.js;
proxy_set_header Host analytics.flowsery.com;
proxy_cache_valid 200 1y;
add_header Cache-Control "public, max-age=31536000";
expires 1y;
}
location /api/track {
proxy_pass https://analytics.flowsery.com/analytics/events;
proxy_set_header Host analytics.flowsery.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header x-forwarded-for $remote_addr;
# CRITICAL: Flowsery reads this as the authoritative visitor IP. Without it, every visitor resolves to your server's region.
proxy_set_header x-flowsery-real-ip $remote_addr;
# Allow POST requests
proxy_method POST;
proxy_pass_request_body on;
}<Location "/js/main.js">
ProxyPass https://cdn.flowsery.com/main.js
ProxyPassReverse https://cdn.flowsery.com/main.js
Header set Cache-Control "public, max-age=31536000"
</Location>
<Location "/api/track">
ProxyPass https://analytics.flowsery.com/analytics/events
ProxyPassReverse https://analytics.flowsery.com/analytics/events
RequestHeader set x-forwarded-for %{REMOTE_ADDR}e
# CRITICAL: Flowsery reads this as the authoritative visitor IP. Without it, every visitor resolves to your server's region.
RequestHeader set x-flowsery-real-ip %{REMOTE_ADDR}e
</Location>Wichtig: Wenn im Dashboard jeder Besucher aus demselben Ort zu kommen scheint, prüfen Sie, ob der Header x-flowsery-real-ip beim Weiterleiten an den Flowsery-Analytics-Endpunkt /events auf die echte Besucher-IP gesetzt wird und nicht auf die IP des Proxy-Servers.
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>4. Deploy
Nach dem Deploy Ihrer Änderungen wird die Proxy-Konfiguration automatisch aktiv.
Prüfen, ob es funktioniert
So validieren Sie das Proxy-Setup:
- Öffnen Sie Ihre Website.
- Ö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.
Für Produktionsumgebungen ist ein dedizierter Webserver (Nginx oder Apache) empfehlenswerter als der Dev-Server-Proxy.
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 den Header
x-flowsery-real-ipmit der tatsächlichen Besucher-IP enthält und nicht mit der Server-IP, wenn Requests an den Flowsery-Analytics-Endpunkt/eventsweitergeleitet werden. - Wenn der Webserver hinter einem weiteren Proxy läuft (Cloudflare, Vercel usw.), sind
$remote_addrbzw.%{REMOTE_ADDR}edie Werte dieses Upstream-Proxys - verwenden Sie stattdessen direkt$http_cf_connecting_ipbzw.%{HTTP:CF-Connecting-IP}oder$http_x_real_ip.