iOS lädt CSS manchmal nicht, wenn zwischen Subdomains navigiert wird

Scheint nur auf iOS-Geräten aufzutreten – manchmal öffnen sich externe Links im selben Fenster, aber CSS wird nicht geladen. Seltsam und ich kann es nicht einmal reproduzieren!

Sieht so aus:

Habe auch Berichte auf anderen öffentlichen Discourse-Foren gefunden:

Da es bereits gemeldet und behoben wurde, frage ich mich, ob es vielleicht mit einem Theme oder einer Theme-Komponente zusammenhängen könnte? Ich wäre für jede Hilfe dankbar.

3 „Gefällt mir“

Welche Fehler werden in den Netzwerkanalyseprotokollen angezeigt, wenn das CSS nicht geladen werden kann?

Was die theoretische Möglichkeit eines Theme-/Komponentenproblems betrifft, haben Sie den abgesicherten Modus ausprobiert?

1 „Gefällt mir“

nein, einfach weil ich dieses Verhalten in den letzten zwei Wochen ein paar Mal gesehen habe, nur auf meinem iPhone, und dasselbe von Benutzern gehört habe, es aber nicht reproduzieren kann, es scheint zufällig zu sein.

1 „Gefällt mir“

Das sieht nach einem alten Fehler aus. Ich kann ihn im Moment nirgendwo reproduzieren und alle verlinkten Themen sind mindestens ein Jahr alt. Klingt nach einem Forum, das nicht auf dem neuesten Stand ist.

2 „Gefällt mir“

Danke, aber es läuft die neueste Beta-Version :frowning:

Was wurde in diesem Fehler behoben? Ich frage mich, ob vielleicht eine Komponente oder ein Thema diesen Fehler erneut ausgelöst hat?

1 „Gefällt mir“

Ich versuche, es erneut zu erfassen, es scheint gelegentlich aufzutreten – bin mir nicht sicher, wie ich es reproduzieren kann. Es tritt jedoch auf, soweit ich weiß, nur unter iOS.

1 „Gefällt mir“

Ich verwende mehrere iOS-Geräte, iPhone 15 Pro Max, iPad Air 5. Generation, Macbook Air M2 und kann dies nicht reproduzieren :thinking:

Welches Gerätemodell und welche iOS-Version verwenden Sie?

1 „Gefällt mir“

persönlich iPhone 12 mit dem neuesten iOS 17.4

Es passiert nur bei Links außerhalb, die HTML a href verwenden, aber selbst dann passiert es nur gelegentlich?

Ich würde gerne wissen, welcher Fehler behoben wurde – vielleicht kann ich etwas auslösen, um ihn zu reproduzieren :confused:

1 „Gefällt mir“

Wie hängen diese Berichte mit Problemen mit dem CSS von Discourse-Foren zusammen? Der erste besagt ausdrücklich:

Das Forum ist von diesem Problem nicht betroffen

1 „Gefällt mir“

Es scheint das gleiche Verhalten zu sein – es tritt auf, wenn eine externe Website von innerhalb von Discourse geöffnet wird. Zum Beispiel das Öffnen von https://discourse.org/ von meta.discourse.org.

Das klingt dann nicht nach einem Problem, das das Forum verursacht, wenn externe Seiten Probleme haben.

Das dachte ich auch, aber es scheint nur zu passieren, wenn man vom Forum aus klickt, und da ich andere Beiträge gefunden habe, dachte ich, vielleicht kann jemand Licht ins Dunkel bringen – es könnte ein iOS-Problem sein. Es wäre einfacher, wenn es nicht jedes Mal CSS laden würde, sondern nur manchmal :sweat_smile:

1 „Gefällt mir“

@Lilly Ich frage mich, ob Sie teilen könnten, wie Discourse href behandelt und ob es eine bestimmte Methode für iOS gibt? Dies scheint ein Safari-bezogenes Problem zu sein, aber es tritt immer nur aus Discourse heraus auf eine andere Domain auf. Diese andere Domain wird nicht geladen, als ob Discourse versuchen würde, das HTML der angeforderten Seite lokal zu laden.

Wir haben bereits versucht, eine No-Cache-Richtlinie zu erzwingen und mit dem www-Präfix zu spielen. Nichts scheint zu funktionieren. Es ist genau das Problem, das hier erwähnt wird:

Sie hatten die Hauptwebsite von ihrer community.URL.com laden lassen, was denselben teilweisen Seitenaufruf verursachte.

Vielen Dank im Voraus!

Unsere Discourse-Instanz ist eine Subdomain (here.domain.com) für unsere Hauptseite (domain.com).

Seit Monaten berichten iPhone-Benutzer, dass beim Klicken von Links von der Subdomain (Discourse) zurück zur Hauptseite die Seite möglicherweise kein CSS oder JS, sondern nur HTML lädt und daher unbrauchbar ist.

Dies geschieht nicht jedes Mal, aber oft genug, sodass sie die Seite neu laden müssen, um es zu beheben. Durch das Neuladen bleiben sie tatsächlich in Discourse, sodass sie erneut klicken müssen.

Wenn wir die Datei access.log von Nginx betrachten, können wir sehen, dass Discourse aus irgendeinem Grund versucht, die Dateien der Hauptdomäne anstelle des Index der Hauptdomäne abzurufen.
Unnötig zu erwähnen, dass Discourse diese Dateien nicht hat und die Seite daher fehlerhaft ist.

Dies stammt aus der Datei “access.log” von Nginx:

[19/May/2024:09:49:51 +0000] "here.domain.com" 176.76.227.47 "GET /js/cart/cart.js?v=0.32 HTTP/2.0" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Ribblr Mobile" "-" 429 230 "https://here.domain.com/c/testing/17" - 0.000 "-" "-" "-" "-" "-" "-" "-"

[19/May/2024:09:49:51 +0000] "here.domain.com" 176.76.227.47 "GET /css/footer_and_header.css?v=1.13 HTTP/2.0" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Ribblr Mobile" "-" 404 7963 "https://here.domain.com/c/testing/17" 0.019 0.019 "-" "-" "-" "-" "-" "-" "-"
[19/May/2024:09:49:51 +0000] "here.domain.com" 176.76.227.47 "GET /css/common/jssocials.css?v=0.03 HTTP/2.0" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Ribblr Mobile" "-" 404 7968 "https://here.domain.com/c/testing/17" 0.020 0.020 "-" "-" "-" "-" "-" "-" "-"
[19/May/2024:09:49:51 +0000] "here.domain.com" 176.76.227.47 "GET /js/common/lightslider.js?v=0.14 HTTP/2.0" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Ribblr Mobile" "-" 404 7980 "https://here.domain.com/c/testing/17" 0.020 0.020 "-" "-" "-" "-" "-" "-" "-"
[19/May/2024:09:49:51 +0000] "here.domain.com" 176.76.227.47 "GET /js/common/jssocials.js HTTP/2.0" "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Ribblr Mobile" "-" 404 7978 "https://here.domain.com/c/testing/17" 0.034 0.034 "-" "-" "-" "-" "-" "-" "-"

Wir haben versucht, sowohl href-Links als auch window.reload() zu verwenden, aber das Problem bleibt dasselbe. Nochmals, es tritt nur gelegentlich auf und nur bei iPhone-Benutzern.

Irgendwelche Ideen, warum das passiert und wie es behoben werden kann?

1 „Gefällt mir“

Ist das dasselbe Problem, das Sie hier beschrieben haben?

1 „Gefällt mir“

Ja! Es muss zusammengeführt werden :sweat_smile:

Ich denke, wir verstehen jetzt besser, was falsch ist.

2 „Gefällt mir“

Hat vielleicht jemand aus dem Team Gedanken dazu? @Lilly Ich weiß, wir haben das vor ein paar Monaten hier besprochen – vielleicht hast du zusätzliche Erkenntnisse, die du teilen möchtest?

Ich glaube, es ist dasselbe Problem wie bei der Diskussionswebsite, die ich in meinem ersten Beitrag geteilt habe.

Wir haben einige seltsame Probleme wie dieses beobachtet. Soweit wir das beurteilen können, muss es ein Fehler in Safari/WebKit sein. Es sollte unmöglich sein, dass diese Art von ‘gemischtem Website’-Rendering auftritt. Wir haben einen Bericht bei WebKit eingereicht. (cc @pmusaraj)

Wenn jemand eine konsistente Möglichkeit findet, das Problem zu reproduzieren, würde das mit ziemlicher Sicherheit dazu beitragen, dass der Fehler priorisiert wird.

6 „Gefällt mir“

Gibt es Ideen für eine externe Link-Umgehung?
Sowohl HTML HREF als auch JS window.replace verhalten sich gleich :frowning:
(Ich bin sicher, dass Vorwärts/Zurück fast unmöglich zu überschreiben sind)

1 „Gefällt mir“

Leider habe ich keine Ideen für eine Umgehungslösung. Ich habe versucht, Service Worker abzumelden, falls dies der Grund für den Konflikt war, aber es hatte keine Auswirkung.

Derzeit bin ich lokal auf Safari Technology Preview umgestiegen. Es scheint das Problem nicht zu haben, was ein Hinweis darauf sein könnte, dass dies in neueren Versionen von Webkit behoben ist. Oder es bedeutet, dass ein frischer Browser mit einem frischen Cache die Probleme nicht hat… schwer zu sagen.

Wir werden dies beobachten und weiterhin nach Lösungen suchen. Das Problem betrifft mehrere Personen im Discourse-Team und auf verschiedenen Plattformen (macOS, iOS, DiscourseHub-App). Abgesehen davon, eine magische Lösung zu finden, können wir hier am besten dem Webkit-Fehlerbericht folgen und dort zusätzliche Informationen hinzufügen, falls relevant/nützlich.

2 „Gefällt mir“