Ich betreibe OwnCloud unter der Adresse cloud.domain.com zum Teilen von Dateien. Piwik läuft unter piwik.domain.com. Das Ganze wird bei Hosteurope gehostet. Zur Sicherheit ist die Cloud hinter einem SSL-Proxy und wird daher von cloud.domain.com auf https://ssl.webpack.de/cloud.domain.com umgeleitet.
Ich tracke mit Piwik den Zugriff auf die Datei public.php, somit nur die User die auf freigegebene Dateien zugreifen.
Der Code dafür ist folgender:
Der funktionierte bis vor Kurzem auch sehr gut. Doch leider geht er seit geraumer Zeit nicht mehr. Ich glaube ich habe zwischen durch die OwnCloud geupdatet. Doch sicher bin ich mir nicht.
Als URLs bei der Website sind in den Piwik Einstellungen cloud.domain.com und ssl.webpack.de eingetragen.
Wenn ich nur den Image Tracker nehme gehts auch.
Wie kann ich den Javascript Tracker überprüfen ob er anspringt?
Im Browser (Chrome) F12 drücken - damit öffnet sich die Developer Console. Unter Network werden dann alle Requests gezeigt die gesendet werden. Wenn der JavaScript Tracker funktioniert findet sich dort ein Request an “piwik.php”. Alternativ mal unter “Console” schauen ob Fehler auftreten.
hmm piwik.php taucht weder bei network auf noch werden fehler angezeigt. ich habe piwik auch auf weiteren (z.b. domain.com) website laufen, da geht alles problemlos.
ich werde es mir mal genauer ansehen und berichten was ich rausbekomme habe.
also ich habe jetzt nochmal ein bisschen rumprobiert und bin dem problem auf die schliche gekommen.
und zwar habe ich ja piwik ohne ssl laufen. also einfach unter piwik.domain.com.
meine ownCloud läuft allerding mit ssl-verschlüsselung (SSL-proxy).
wenn ich jetzt den trackingcode mit dem bild nehme geht es. allerdings mit folgender warnmeldung: Gemischter Inhalt und dem folgendem link: Mixed content - Web security | MDN
beim javascript-tracking gehts nicht mehr mit diesem fehlermeldung: Content Security Policy: Gegen Direktive inline script base restriction wird verstoßen.
es scheint also ein problem mit gemischtem (https und http) content zu sein. ich kann mich errinnern, dass mozilla da was umstellen wollte. doch unter chorme scheint es ähnlich zu sein.
jetzt ist die frage, wie kann ich das lösen? muss ich die owncloud auch ohne ssl laufen lassen oder piwik mit?
was mir noch auffiel: wenn ich eine einfache html datei mit dem trackingcode erstelle und über die ssl Adresse aufrufe kommt der fehler nicht. die piwik.php taucht normal bei der netzwerkanalyse auf.
wenn sich das jemand genauer ansehen möchte, kann ich ihm auch pm die Adresse schicken.
Piwik muss an der Stelle wirklich über SSL laufen. Alternativ könntest du versuchen, den Tracking Code so abzuändern, dass nur http statt https benutzt wird.
[quote=“Fabian Becker”]
[…] Alternativ könntest du versuchen, den Tracking Code so abzuändern, dass nur http statt https benutzt wird.[/quote]
das habe ich ja mit der zeile var u=“http://piwik.domain.com/”; getan. im gegensatz zum originaltrackingcode von piwik. doch das hilf leider auch nicht. es schon wirklich ein problem mit dem laden von nicht verschlüsseltem inhalt in einer verschlüsselten verbindung zu sein.
habe jetzt mal mit einem alten browser (firefox 17) getestet, doch da gehts auch nicht. vlt liegt es dann auch an ownCloud. werde mich mal an das forum dort wenden.
dank der tatkräftigen Hilfe im Domainfactoryforum wurde eine Lösung gefunden, die wahrscheinlich auch bei anderen Webhostern mit anderen Proxy für https funktionieren wird.
Ausgangssituation:
Owncloud wird über Proxy https://proxy.tdl/ aufgerufen
Der eingebundene Piwiktrackingcode wird als unsicherer Inhalt geblockt.
Änderungen in OwnCloud:
In der config/config.sample.php gibt es entsprechenden Code für die config/config.php
/* Custom CSP policy, changing this will overwrite the standard policy */
"custom_csp_policy" => "default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; frame-src *; img-src *; font-src 'self' data:; media-src *",
Ich habe nun diesen angepassten Code in die config/config.php eingefügt
Darüberhinaus wird der eingebundene Trackingcode angepasst:
aus
var u=(("https:" == document.location.protocol) ? "https" : "http") + "://domain.tdl/piwik/";
wird
var u="https://proxy.tdl/domain.tdl/piwik/";
Nun werden die Zugriffe wieder gezählt. Allerdings taucht der Proxy in den Statistiken auf. Daher ist noch eine Anpassung in Piwik erforderlich. Dazu gibt es auch einen Eintrag in den FAQ.
Ich habe folgende Code in die config/config.ini.php eingefügt:
meine lösung war bisher, nur das piwik image einzubinden. damit ging es doch zeigt nicht alle statistischen daten an.
werden mal die vorgeschlagene lösung von hb aus dem df forum probieren. danke dafür