Kein Tracking mehr nachdem Server jetzt auf HTTPS läuft


#1

Ich habe HTTP und HTTPS Seiten die ich tracken möchte. Der Piwik Server lief bisher immer auf HTTP. Nun wollte ich eine HTTPS Seite tracken und habe daher dem Server ein Zertifikat verpasst. Er läuft jetzt nur noch auf Port 443. Seitdem wird nun meine HTTPS Seite getrackt aber meine ganzen HTTP Seiten nicht mehr, muss ich da noch was beachten, am Tracking Code hat sich nichts geändert. Was mir bei einem Packettrace aufgefallen ist, ist dass er immer noch den Tracking Code von http://piwik.server holen will und nicht von https://piwik.server. Da stimmt dann definitiv etwas nicht. Könnt ihr mir helfen?


(Cliff Dölling) #2

Dieses Problem habe ich auch, das per HTTPS nicht mehr getrackt wird im Piwik.


#3

Workaround ist, man macht ein Redirect von HTTP auf HTTPS, das geht so:

NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.example.com
Redirect permanent / https://secure.example.com/

ServerName secure.example.com DocumentRoot /usr/local/apache2/htdocs SSLEngine On # etc...

(Cliff Dölling) #4

Darum geht es doch garne… Es geht darum das Speziell keine HTTPS Seiten getrackt werden. Da hat es mit dem Virtualhost null zu tun! :slight_smile:


#5

Ja doch, bei mir ging es darum. Was du nicht kannst ist von einem HTTP Piwik Server aus HTTPS Seiten tracken. Das geht technisch nicht, weil auf der HTTPS Seite direkt ein GET request auf den HTTP Code ausgeführt würde und das gäbe wohl eine Fehlermeldung, siehe piwik site has no https, tracking site has https [#1440768] | Drupal.org. Der technische Background ist mir allerdings auch nicht ganz klar, wieso das so ist.

Die Fragestellung die ich oben gestellt habe, lässt sich durch den “Redirect permanent” in der Apache Config lösen, denn das Problem war ja, dass nachdem ich den Piwik Server auf HTTPS umgestellt hatte, er zwar HTTPS Seiten getrackt hat, nicht aber HTTP Seiten, weil er immer einen Request an Port 80 abgeschickt hat. Jetzt wird sozusagen der Request an Port 80 an Port 443 umgeleitet. Nicht schön aber funzt. Frag mich nur warum das nicht standardmäßig geht, evtl. ein Bug?!


(Karsten Krohn) #6

Damit du Tracken kannst, bolzt Du alles auf SSL um? Oh ha.

Hab ihr mal geschaut, wie eurer Tracking-Code ausschaut und das unter SSL die pkBaseURL auf https zeigt, ansonsten aber auf http?

Also Port 80 Website:

var pkBaseURL = "http://piwik.server/";

und Port 443 Website

var pkBaseURL = "http[b]s[/b]://piwik.server/";

Und auf Seiten, die sowohl auf HTTP und HTTPS erreichbar ist, ändert ihr das dynamisch mit etwas Javascript, z.B.


var pkBaseURL = (("https:" == document.location.protocol) ? "http[b]s[/b]://piwik.server/" : "http://piwik.server/";

Vielleicht reicht das ja schon?


(Peterbo) #7

Verfügt der Tracking-Server über ein gültiges SSL-Zertifikat? Was meldet Firebug bzgl des Piwik-Requests auf einer https-Seite?


(Cliff Dölling) #8

Wir haben nicht alle Webseiten auf HTTPS laufen. Lediglich Kundenbereiche, Bestellsysteme. Die solltem man ja bekanntlich auch HTTPS Sicher haben.

Mir bringt es nichts wenn ich jetzt anfange überall den Virtualhost anzupassen. Es muss eher eine Allgemeine Lösung her damit PIWIK http und https Tracken kann! Bei Google Analystic oder wie der Schrott heißt, geht es ja auch!


(Peterbo) #9

Das kann Piwik auch. Wie man im Tracking-Code an folgender Zeile


var pkBaseURL = (("https:" == document.location.protocol) ? "https://www.example.de/statistik/" : "http://www.example.de/statistik/");

unschwer erkennen kann, wird automatisch zw. den angefragten Protokollen umgeschaltet. Es ist also keine manuelle Weiterleitung zw. http / https nötig!

Wenn “https” erkannt wird, wird auch automatisch das Tracking auch auf https durchgeführt: “https://www.example.de/statistik/”. Die Tracking-Domain example.de muss natürlich über ein gültiges SSL Zertifikat verfügen und erreichbar sein, damit “https://www.example.de/statistik/piwik.php” aufgerufen werden kann!


(Cliff Dölling) #10

Hallo,

Falsch Vorgehensweise!

Wir setzen Piwik auf einen V-Server ein. Piwik selbst hat kein SSL Zertifikat. Wir nutzen eine Sub-Domain. Nennen wir diese mal: sub.tropiait.de. Auf der Sub-Domain wird ein PositivSSL Zertifikat verwendet. Piwik Trackt weder Views noch Klicks noch irgendwas was anderes. :wink:

Und nun meine Frage; Was hat das Problem also mit dem Code zu tun? Wenn müsste wohl eher irgendwo was erweitert werden nur was ist die Frage.

Liebe Grüße,
Cliff Dölling


(Karsten Krohn) #11

Cliff,

Falsch Vorgehensweise.
etwas eigentartiger “Ton”, dafür dass Du eine Lösung von uns für Dein Problem erhoffst…

Was hat das Problem also mit dem Code zu tun?
Trackst Du von deiner SSL-Site auf ein NICHT-SSL-Piwik, wird der Browser warnen, dass unsichere Elemente auf der Seite sind und diese standardmäßig nicht ausführen/anzeigen. Heißt: Es wird nichts von Piwik getrackt. Das scheinst Du aber schon verstanden zuhaben, denn im Front-End von http://www.tropiait.de hast Du die Protokoll-Abfrage ja schon mal drin. Ob Du das in Deinen Backends auch gemacht hast, kann ich nicht sehen. Dein Wordpress-Adminbereich scheint jedenfalls auch unverschlüsselt. Kein Redirect auf SSL: » Top-Colo

Wolltest Du mit Deinem letzten Post sagen, dass trotz Einbau der Protokoll-Weiche im JS deine SSL-Seiten nicht getrackt werden, oder hast Du es da noch nicht ausprobiert?

Gruß,
Karsten


(Cliff Dölling) #12

Eigenartiger Ton ist das nicht. Lediglich eine Freie Meinungsäußerung.

Wie geschrieben: Piwik selbst läuft nur als HTTP und die Beispiel Sub Domain als HTTPS.
Piwik muss den Unterschied zwischen HTTPs und HTTP eigentlich beherrschen. Sowas gehört eigentlich dazu. Ich kenne was das betrifft die Vorgehensweise nicht wirklich. Daher die Frage!

Was muss nun getan werden damit Piwik meine HTTPs Webseite Tracken kann?


(Peterbo) #13

Piwik muss den Unterschied zwischen HTTPs und HTTP eigentlich beherrschen
Einfache Antwort: Piwik beherrscht diesen Unterschied. Nur der Server bzw. die Subdomain (auf der Piwik läuft) muss auch über ein gültiges Zertifikat verfügen. Das hat gar nichts mit Piwik zu tun, sondern mit der jeweiligen Server-Konfiguration.

Schon der Tracking-Code, den man beim Anlegen einer neuen Seite in Piwik per Copy&Paste in eine Webseite integriert, ist mit der http / https-Weiche ausgestattet. Piwik beherrscht diesen Unterschied also schon von Grund auf OHNE jedwede Änderung in irgendwelchen Codes / Tags. Mit Firebug z.B. sehen Sie sofort, was beim Aufruf einer https-Seite mit dem Tracking-Pixel passiert. Sollte dieser, oder das Laden der piwik.js ein “Aborted” senden, ist das Zertifikat auf der Tracking-DOmain einfach nicht vorhanden oder ist nicht für die Subdomain gültig. Dann muss ein neues Zertifikat installiert werden.


(Cliff Dölling) #14

Hallo,

Also muss ich für die Piwik V-Server ein SSL Ausstellen und sinnlos Kosten Investieren damit der SSL Tracking machen kann bei Seiten die HTTPS besitzen?


(Peterbo) #15

Richtig. Wie bei jeder anderen Software, die in einem SSL-Kontext läuft, auch.

Ist ja klar, wenn ich in einem Bestellvorgang nur sichere Daten darstelle, darf ich keine Dateien / sonstiges nachladen, was von einer ungesicherten http-Quelle kommt. Logisch, oder?

SSL-Zertifikate für (Sub-)Domains gibt es ab 15€ pro Jahr; Ich weiß nicht, ob man da von “Investition” sprechen kann.


(Cliff Dölling) #16

Naja 15 Euro ist übertrieben, ich bekomme die SSL ab 9,99 Euro :wink: Es geht einfach nur darum, das man heut zu tage gerne über all wo es geht spart. :smiley:

Gut dann werde ich ein SSL ausstellen und dann berichten obs funktioniert.


(Cliff Dölling) #17

Hey yo,

Also, es Funktioniert nun alles. Habe mir eben ein COMODO Test Zertifikat besorgt und er Trackt nun auch die SSL Webseiten. Sollte man ggfs. mal irgendwo in der Dokumentation verankern. :slight_smile:

Danke für eure Hilfe!

Liebe Grüße,
Cliff Dölling


#18

Der Threadersteller, nämlich ich, hat weiterhin das Problem, das wie folgt aussieht:

Mein Piwik Server stats.xy.de ist NUR auf Port 443 zu erreichen, hat ein gültiges Zertifikat - alles bestens.

Wenn nun ein User die Webseite http://www.zzz.de mit meinem Piwik Code aufruft, versucht der Browser - warum auch immer - stets eine Verbindung zu http://stats.xy.de aufzubauen, die natürlich fehlschlägt. Danach bricht er ab, er versucht es nicht auf https://stats.xy.de.

Auf meiner Webseite https://www.aaa.de funzt das ganze aber ohne Probleme, denn dort ruft er den https://stats.xy.de Trackingcode auf.

Was läuft da schief, es will mir nicht so ganz klar werden warum er bei http Seiten stets den Piwik Server unter http://stats.xy.de anstatt unter https://stats.xy.de sucht.


(Peterbo) #19

Am Besten mal die URL per PM durchgeben. Dann schaue ich mir das kurz an.
Grüße


#20

Gab es hier eine Lösung für das Problem von johnny_p?

Haben hier derzeit das gleiche Problem.