首頁 >web前端 >css教學 >為什麼我不能在 Firefox 中使用 @font-face 進行跨域字體嵌入?

為什麼我不能在 Firefox 中使用 @font-face 進行跨域字體嵌入?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-27 06:21:10403瀏覽

Why Can't I Use @font-face for Cross-Domain Font Embedding in Firefox?

@font-face 的跨域字體嵌入問題

問題:

問題:

A開發人員正在嘗試在子網域上建立字體儲存庫並使用以下命令從其他網站存取字體@font-face 聲明。但是,這些字體僅適用於它們所託管的子網域。

答案:
<FilesMatch "\.(ttf|ttc|otf|eot|woff)$">
    <IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin "*"
    </IfModule>
</FilesMatch>

問題在於 Firefox 的安全機制。 Firefox 認為跨域 Web 字型嵌入有潛在的安全性風險。為了解決這個問題,使用者可以將以下程式碼新增至託管字體的子網域的頂層.htaccess 檔案:

此程式碼允許Firefox 從子網域載入字體,覆蓋其預設安全措施.對於限制對字體儲存庫的訪問,Access-Control-Allow-Origin 的W3C 規範僅支援通配符或特定域。沒有直接的解決方案可以在不使用自訂身份驗證機制的情況下將存取權限限制為僅授權使用者。

以上是為什麼我不能在 Firefox 中使用 @font-face 進行跨域字體嵌入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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