首頁 >web前端 >css教學 >Amazon S3 CORS 能否解決 Firefox 的跨域字體載入問題?

Amazon S3 CORS 能否解決 Firefox 的跨域字體載入問題?

Patricia Arquette
Patricia Arquette原創
2024-12-07 04:35:16831瀏覽

Can Amazon S3 CORS Solve Firefox's Cross-Origin Font Loading Issues?

使用Amazon S3 CORS 解決Firefox 中的跨源字體加載問題

Firefox 在加載來自不同來源的字體方面存在長期存在的問題網頁。當字體託管在 CDN 上時,經常會出現此問題。雖然已經提出了各種解決方案,但可以利用 Amazon S3 CORS(跨域資源共享)來解決此問題嗎?

CORS 配置用於字體載入

啟用透過CORS 載入字體,使用下列CORS 策略設定您的S3 儲存桶:

<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>

此配置允許GET 請求來自具有特定標頭的指定網域,啟用字體載入跨來源。

查詢字串解決方法

如果Cloudfront 正在快取Access-Control-Allow-Origin 標頭,考慮使用查詢字串來區分來自不同網域的呼叫:

例如,對於Domain A:

https://hashhashhash.cloudfront.net/font.woff?https_a.domain.com

對於域B:

https://hashhashhash.cloudfront.net/font.woff?http_b.domain.com

此解決方法可確保 Cloudfront 為每個域提供正確的 CORS 標頭。

以上是Amazon S3 CORS 能否解決 Firefox 的跨域字體載入問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn