Heim > Web-Frontend > CSS-Tutorial > Wie kann ich Firefox-Probleme beim domänenübergreifenden Laden von Schriftarten mit Amazon S3 CORS beheben?

Wie kann ich Firefox-Probleme beim domänenübergreifenden Laden von Schriftarten mit Amazon S3 CORS beheben?

Linda Hamilton
Freigeben: 2024-12-17 14:38:18
Original
231 Leute haben es durchsucht

How Can I Fix Firefox's Cross-Domain Font Loading Issues with Amazon S3 CORS?

Domainübergreifendes Laden von Schriftarten zwischen Amazon S3 CORS und Firefox: Behebung von Problemen beim Laden von Schriftarten

Es ist bekannt, dass bei Firefox Probleme beim Laden von Schriftarten auftreten, die von einem anderen Ursprung als der aktuellen Webseite stammen , insbesondere wenn Schriftarten auf CDNs gehostet werden. Dieses Problem wurde in Online-Foren ausführlich diskutiert, darunter auch im zitierten.

Um dieser Herausforderung zu begegnen, bietet Amazon S3 CORS (Cross-Origin Resource Sharing) eine mögliche Lösung. Mit CORS können Server Ressourcen angeben, auf die von anderen Domänen aus zugegriffen werden kann, wodurch domänenübergreifende Sicherheitsbeschränkungen gemildert werden.

Um CORS für S3 zu konfigurieren, muss ein XML-Dokument in den Bucket hochgeladen werden, der die Schriftarten enthält. Die folgende Konfiguration wird empfohlen:

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>https://mydomain.com</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <AllowedHeader>Content-*</AllowedHeader>
        <AllowedHeader>Host</AllowedHeader>
    </CORSRule>
    <CORSRule>
        <AllowedOrigin>https://*.mydomain.com</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <AllowedHeader>Content-*</AllowedHeader>
        <AllowedHeader>Host</AllowedHeader>
    </CORSRule>
</CORSConfiguration>
Nach dem Login kopieren

Diese Konfiguration ermöglicht:

  • GET-Anfragen vom angegebenen Ursprung (mydomain.com)
  • Subdomains des angegebenen Ursprungs
  • Setzt das maximale Alter von CORS-Headern auf 3000 Sekunden
  • Erlaubt eine Anfrage Header, die mit „Content-“ und „Host“ beginnen

Aufgrund der Zwischenspeicherung des Access-Control-Allow-Origin-Headers durch Cloudfront haben einige Entwickler jedoch Probleme beim domänenübergreifenden Laden von Schriftarten gemeldet. Um dies zu umgehen, besteht eine Problemumgehung darin, eine Abfragezeichenfolge zu verwenden, um zwischen Anrufen aus verschiedenen Domänen zu unterscheiden:

curl -i -H "Origin: https://a.domain.com" http://hashhashhash.cloudfront.net/font.woff?https_a.domain.com
Nach dem Login kopieren

Dieser Ansatz ermöglicht es Cloudfront, eindeutige Antworten für verschiedene Domänen bereitzustellen und so das Caching-Problem zu umgehen.

Zusammenfassend lässt sich sagen, dass die Verwendung von Amazon S3 CORS zusammen mit der Problemumgehung für Abfragezeichenfolgen die Probleme beim domänenübergreifenden Laden von Schriftarten in Firefox lösen kann. Wenn Sie weitere Hilfe benötigen, finden Sie im zitierten AWS-Forenthread weitere Einblicke und Erklärungen von Amazon-Experten.

Das obige ist der detaillierte Inhalt vonWie kann ich Firefox-Probleme beim domänenübergreifenden Laden von Schriftarten mit Amazon S3 CORS beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage