das Problem ist das folgende:
Bestimmte Schriftarten werden scheinbar via http geladen, was zu Fehlern führt wenn die Seite via https geladen wird. Stichwort: mixed content.
Jemand eine Idee wie man dem vorbeugen kann ? Der Font wird prinzipiell nicht gebraucht.
Also entweder Font via https laden oder gar nicht laden (was besser wäre).
Ich hab mir das Problem mal etwas genauer angeguckt (v6.3.0.1 - Production-Template):
Ich habe in der Administration bei allen meinem Sales-Channels nicht eine einzige http: Domäne/Url.
Die http: Domain die dort angegeben ist und die Probleme verursacht ist die Domain die automatisch vorhanden war nachdem ich das System installiert habe. (diese hab ich direkt nach der installation entfernt)
Ein weiterer Fehler: Bei den anderen beiden Sales-Channels - welche jeweils eine komplett andere Domain haben - versucht das System trotzdem die Fonts mit der vom ersten Sales-Channel nicht vorhandenen/konfigurierten http:Url zu laden.
Sonstiges:
public/theme/210b5018c40252aa157b40e07653XXX/css/all.css (hier werden die absoluten Urls hardcodiert reingeschrieben)
Man kann eine https: Ausgabe zum Testen erzeugen indem man in der Datei ‘vendor/shopware/storefront/Theme/ThemeCompiler.php’ nach Zeile 290 folgendene Zeile einfügt:
Danach ist der Fehler zumindest in dem ersten von drei Sales-Channels weg!
Bei ‘bin/console theme:compile’ wird auch folgende Datei erzeugt: var/theme-variables.scss (Ich vermute der Fehler ist das in dieser Datei die Urls Absolut und nicht relativ drin stehen).
Wie dem auch sei ich habe keine Zeit mir das jetzt weiter anzugucken. Aber vielleicht hilft das anderen dabei eine Lösung zu entwickeln
Was mir auch noch aufgefallen ist: Das System nimmt einfach den Wert aus APP_URL der in der .env Datei steht (für alle Verkaufskänale unabhängig von der tatsächlich hinterlegten Domains & Urls). Als Quick-Fix kann man dort einfach http durch https ersetzen (das ist aber auch keine Lösung für Multishop Systeme)
@Shyim
Mit 6.3 wurden folgende SCSS Variablen eingeführt. Das verursacht die Probleme.
Ja, muss das leider auch bestätigen @Shyim. Bei uns stellt es sich so dar, dass wir mehrere Sales-Channel mit unterschiedlichen Domains eingerichtet haben. Leider wird als Domain die verwendet, die wir im Menü ( Einstellungen > Shopware Account ) als Lizenzdomain eingstellt haben. Das führt bei den anderen Domains dazu, dass folgender Fehler angezeigt wird:
Quellübergreifende (Cross-Origin) Anfrage blockiert: Die Gleiche-Quelle-Regel verbietet das Lesen der externen Ressource auf https://www.sample-domain.de/bundles/storefront/assets/font/Inter-Bold.woff2. (Grund: CORS-Kopfzeile 'Access-Control-Allow-Origin' fehlt).
Falls sich das über die Konfiguration lösen lässt, wäre das schön, habe bisher aber nichts gefunden. Hat jemand eine Idee, wie man das fixen kann?
Die o.g. Variablen (wie z.B. “$sw-asset-theme-url”) wurden mit Shopware v6.3 eingeführt und der Prozess rund um die Erzeugung & Einbindung ist nicht Multi-Store kompatibel. Dieser Prozess zieht sich immer den Wert aus der .env. Wenn ich den Wert in der .env z.B. auf test-123.com ändere dann wird in jedem Verkaufskanal versucht die Fonts von test-123.com zu laden. Die tatsächlichen Urls die in der Administration konfiguriert sind werden ignoriert. Das die Domain ab 6.3 im kompilierten Quelltext und den SCSS/CSS Dateien steht liegt eben an der Variable “$sw-asset-theme-url”.
Ist das ein Bug oder mache ich etwas falsch?! Ansonsten funktionieren die Verkaufskanäle wie erwartet.
Das hat nichts mit gehässig zu tun. Shopware 6 ist voller Bugs was soweit auch nachvollziehbar ist. Wenn allerdings Mitarbeiter auf Hinweise aus der Community nicht reagieren oder sogar Mitglieder in die Irre führen find ich das einfach nicht mehr ok. Wenn das die Fehlerkultur bei Shopware ist, ist es kein Wunder das soviele Probleme in dem System sind. Das ist ja nicht nur diese Diskussion ich lese bei vielen anderen Diskussionen auch mit. Wenn ich sehe was einige Shopware Mitarbeiter insbesondere zwei bis drei Personen (ja es sind immer wieder die Gleichen) schreiben, dann frage ich mich ob die Überhaupt helfen wollen. Und wenn sie es nicht wollen wäre es vielleicht besser gar nichts zu schreiben als irgendwelche irreführenden Aussagen zu tätigen die gleichzeitig noch einen leicht herablassenden Unterton haben.
Macht bei mir keinen Unterschied.
Ich habe aber auch keine Subshops oder so, daher wird denke ich das Allow-Origin keinen Unterschied machen.
Bei mir meckert die HTTPS Verbindung, weil die Fonts über HTTP geladen werden möchten.
Selbst ein https force via htaccess ändert nichts an der Sache …
Seltsam, dass bei Dir die Fonts per HTTP kommen. Die wurden bei mir jedenfalls per HTTPS eingebunden, nur eben von der falschen Domain Gibt es den Fall schon als Ticket? Dann könnten wir mal alle dafür voten: https://issues.shopware.com
@TeichDatensysteme Wenn du ein eigenes Theme hast kannst du den Fehler recht einfach beheben. Bei mir erben die Child Themes von einem Parent Theme dementsprechend habe ich die Änderungen nur im Parent Theme vorgenommen.
// Fix für das Font Problem (https://forum.shopware.com/discussion/70874)
// - Ticket: https://issues.shopware.com/issues/NEXT-10560
$sw-asset-theme-url: '';
@DanielZiehfreund So wie das oben beschrieben wird geht das sicher … hab das in einer 6.3.4.1 exakt so lösen können.
Achte nach der Anpassung darauf, das Theme zu kompilieren (bin/console theme:compile oder das Theme im Admin speichern).
Danach den Cache leeren (bin/console cache:clear oder im Admin), im besten Fall auch deinen Browser Cache.