iOS no carga CSS a veces al navegar entre subdominios

Gracias @Don, 100% reproducible para mí también. Al probar con BrowserStack, parece una regresión después de Safari 17. No se reproduce en Ventura (Safari 16.5), pero sí en Sonoma (Safari 17.3). He informado los pasos y hallazgos anteriores a Webkit, esto debería ayudarles a rastrearlo.

8 Me gusta

¡Genial, pasos reproducibles! :clap:

También puedo reproducirlo fácilmente en nuestro foro (3.2.4). La clave parece ser el paso de navegación hacia atrás, ya que ese activa el error, independientemente de la página inicial o intermedia (probé tema, categoría, preguntas frecuentes, insignias, etc.).

Mientras Webkit investiga esto (imagino que llevará un tiempo que una solución llegue a una versión de producción), ¿tendría sentido intentar determinar el cambio particular en Discourse a partir del cual comenzó a aparecer el error en Safari y, si es simple y factible, tener una solución alternativa local? En nuestro caso, solo comenzó a aparecer después de que recientemente actualizamos de 3.1.5 a la última versión estable. Una ventana grande, pero ¿quizás iterar primero a través de las versiones beta y seguir desde allí?

2 Me gusta

PD: Solo para añadir que, ahora que puedo reproducirlo, intenté deshabilitar temporalmente el PWA en nuestro sitio web principal y no pareció marcar ninguna diferencia en esto. Así que… no está relacionado con PWA múltiples.

Así que lo he probado también en Chrome y he notado algo muy extraño. Si lo entiendo correctamente, ¿solo debería ocurrir en Safari? Lo pensé, pero quizás me equivoque. Porque también puedo reproducirlo en el navegador Chrome en iPad. ¿Entonces el problema está con el sistema operativo? ¿También es reproducible en MacOS con Chrome? :thinking: ¿O solo afecta a iOS y iPadOS en Chrome también debido al problema de webkit?

Entiendo que Apple no permite navegadores de terceros en iOS/iPadOS, por lo que Chrome/Firefox/etc son solo una GUI especializada que utiliza Webkit para renderizar páginas en segundo plano.

Dado que el problema está en Webkit, cualquier navegador que se ejecute en iOS/iPadOS se ve afectado.

6 Me gusta

Sí, eso es :+1: Aunque esto está cambiando Using alternative browser engines in the European Union - Support - Apple Developer

3 Me gusta

Gracias por insistir en esto @mentalstring, después de hacer una “bisección”, creo que hay un culpable muy probable en: DEV: Change default of `cross_origin_opener_policy_header` (#24940) · discourse/discourse@38abc0d · GitHub

Desde una prueba en una de nuestras instancias, ejecutar SiteSetting.cross_origin_opener_policy_header = 'unsafe-none' en la consola de Rails o agregar esto a tu ENV:

DISCOURSE_CROSS_ORIGIN_OPENER_POLICY="unsafe-none"

soluciona el problema. Esa configuración del sitio es una medida de endurecimiento de la seguridad, estamos evaluando los pros y los contras de actualizar el núcleo también, pero si tú (y otros que sigan este problema) pudieran probar esto por su cuenta, sería genial, nos daría más confianza en que este es realmente el cambio subyacente en Discourse.

3 Me gusta

¡Ajá, ahí está entonces! :+1:

Puedo confirmar que establecer COOP en 'unsafe-none' ha detenido efectivamente que el error aparezca en nuestra instancia 3.2.4. Volver a same-origin-allow-popups lo trae de inmediato.

Es bueno tener algún tipo de solución temporal. Mientras tanto, imagino que esta es información útil para informar al equipo de Webkit, ya que apunta a algo específico que lo desencadena.

PD: Gracias por investigar esto y lamento la insistencia – solo estoy tanteando para ayudar a nuestra comunidad. :sweat_smile:

2 Me gusta

Solo para evitar que otros también se lo pierdan, esta parte debería ser:

DISCOURSE_CROSS_ORIGIN_OPENER_POLICY_HEADER: unsafe-none

1 me gusta

Aquí hay un seguimiento, amigos: un desarrollador de WebKit fusionó una solución para este problema hace unas semanas. Intenté probarlo usando las compilaciones nocturnas de WebKit, desafortunadamente, todavía puedo reproducir el problema. Sin embargo, puede que esté haciendo algo mal. Esperaré el próximo lanzamiento de Safari Technology Preview (debería ser pronto) para volver a probar, espero que realmente esté arreglado. (El informe de errores de WebKit está aquí.)

2 Me gusta

Lamentablemente, esto aún no se ha solucionado en la última versión de Safari en Sequoia. He reabierto el informe de error de Webkit anterior vinculado arriba.

4 Me gusta

Buenas noticias, hay una solución en upstream y funcionó en mi máquina usando los archivos de compilación de WebKit. Tardará unas semanas más antes de que esto llegue primero a Safari Technology Preview y luego al Safari general.

7 Me gusta

¿Lo probaste?

Sí, en efecto.

Parece que esto finalmente se incluyó en Safari Technology Preview, versión 209 (Safari 18.2, WebKit 20621.1.6).

Me encantaría tener alguna confirmación de otros usuarios en este tema antes de cerrar. ¡Gracias de antemano!

2 Me gusta

Acabo de probar con la versión 210 y puedo confirmar que el problema ya no ocurre en nuestro foro (en estable) con Safari TP, mientras que todavía ocurre con Safari actual. :+1:

¿Alguna idea de cuánto tiempo puede tardar en llegar a la versión principal de Safari?

1 me gusta

Supongo que estará en la próxima versión de Safari, probablemente dentro de unas semanas. ¡Gracias por probar!

1 me gusta

¡Parece que esto finalmente está solucionado en Safari 18.3!

6 Me gusta

Este tema se cerró automáticamente después de 3 días. Ya no se permiten nuevas respuestas.