Update 5.4.6 > 5.5.3 - Bilder SSL Fehler

Hallo,

nach dem Update auf 5.5.3 und bereits erfolgloses Update auf 5.5.1 werden nach dem Update keine Artikel- und Header-Bilder mehr angezeigt. Der Browser blockiert diese aufgrund von Mixed Content.

SSL ist über Cloudflare realisiert aber mit der Version 5.4.6 funktioniert alles einwandfrei. Bereits in den Einkaufswelten wird der Pfad der Bilder mit “http” dargestellt.

Hat jemand eine Idee?

MIxed Content ist ja ein „Problem“ des  Browsers und nicht von Shopware. Sind die Bildpfad in htttp ? Dazu habe ich eine Frage und eine Antwort: Frage wäre: warum http und nicht https. und die Antwort wäre: Mixed Content wird mittlerweile rigeros von den Browsern blockiert. Zum Glück.

Hast du denn in den Grundeinstellungen bei Shopware auch SSL aktiviert? Das musst du auch machen, denn ansonsten werden intern die URL’s nicht umgeschrieben. Cache leeren nicht vergessen.

In den Grundeinstellungen ist SSL aktiviert…war vor dem Update und nachher auch. wurde auch testweise deaktiviert und erneut aktiviert.

@brettvormkopp: ja der pfad der bilder wird mit „http“ angezeigt, warum kann ich dir nicht sagen und genau da ist ja der fehler…wie im thread beschrieben

Ggf. statt über https über http im Backend gearbeitet? Ich glaube, Shopware speichert die Bilder Urls immer komplett mit Domain und Protokoll, warum auch immer…

@hhmarco73 schrieb:

Ggf. statt über https über http im Backend gearbeitet? Ich glaube, Shopware speichert die Bilder Urls immer komplett mit Domain und Protokoll, warum auch immer…

Nein,habe definitv über https gerarbeitet…habe auch extra ein neues bild hochgeladen, das wurde auch trotzdem per http angezeigt :frowning:

Und es ändert sich ja nur, wenn ich den Shop update. Im aktuellen Zustand ist alles in Ordnung und die Bilder werden über https angezeigt…

Der Bildpfad wird bis /media/… on fly erstellt. Denke mal, dass es kommt aus s_core_shops -> host = deine Domain, secure = 1

Der Link ist fest in der Datenbank. s_emotion_element_value => value = array/object path

Kannst das beim nächsten Update ja gegenchecken.

Betrifft das nur die Einkaufswelt oder alle Bilder im Frontend?
 

@brettvormkopp schrieb:

Der Bildpfad wird bis /media/… on fly erstellt. Denke mal, dass es kommt aus s_core_shops -> host = deine Domain, secure = 1

Der Link ist fest in der Datenbank. s_emotion_element_value => value = array/object path

Kannst das beim nächsten Update ja gegenchecken. 

also in host steht die domain und secure ist auch 1 (vor dem update)

und soweit ich das sehe ist in s_emotion_element_value immer der pfad ohne protokoll (http, https) 

 

@Moritz Naczenski schrieb:

Betrifft das nur die Einkaufswelt oder alle Bilder im Frontend?
 

es betrifft schon auch die artikel pages bspw. Alle Seiten wo Images eingebunden sind. Im footer aber bspw. ist ein Bild drin, welches per https eingebunden ist. das wurde aber auch manuell über das theme als datei mod. eingebunden und nicht über das backend

 

 

Schau dir das mal an: https://forum.shopware.com/discussion/comment/220139/#Comment_220139

@Moritz Naczenski schrieb:

Schau dir das mal an: https://forum.shopware.com/discussion/comment/220139/#Comment_220139

Diese Anleitung habe ich bereits erfolglos durchgeführt. Ich nutze ausserdem bereits Version 5.4.6.

$_SERVER[‚HTTP_X_FORWARDED_PROTO‘] = ‚https‘; 

hat leider keinen Effekt gebracht

Hat geklappt… 

ich musste zusätzlich zu 

$_SERVER[‘HTTP_X_FORWARDED_PROTO’] = ‘https’;
 

auch testweise

$_SERVER[‘HTTPS’] = “on”;

in der config.php hinzufügen. Jemand eine Ahnung warum? Mit den Proxy IPs von Cloudflare hat es nicht funktioniert leider. Ich nutze übrigens NGINX
 

Kann es sein dass du kein https auf deiner Server Maschine hast?

Du kannst zwar https haben mit Cloudflare, aber der Server Aufruf könnte in wirklichkeit ein HTTP Aufruf sein. 

 

 

Das einfachste wäre wenn du hier auf Full stellst in den Cloudflare einstellungen. Dann verbindet sich Cloudflare mit deinen Server nur noch mit https. Dadurch sollte hoffentlich “HTTPS” für PHP richtig gefüllt sein.

Client Ips richtig setzen => https://support.cloudflare.com/hc/en-us/articles/200170706-How-do-I-restore-original-visitor-IP-with-Nginx-

Ansonsten setz im nginx vhost via fastcgi_param HTTPS auf on :slight_smile: