在 Web 開發領域,@font-face 對於豐富網頁具有巨大的意義自訂字體。但是,使用者在 Internet Explorer 7、8 和 9 中透過 HTTPS 使用 EOT 字型時可能會遇到特殊問題。
問題:
儘管確保伺服器託管具有正確內容類型的字體,EOT 字體無法透過 HTTPS 加載,但它們可以透過 HTTP 無縫運行。這種令人費解的行為讓許多開發人員感到困惑。
分析:
要進一步研究這個問題,檢查 HTTP 標頭 Cache-Control 至關重要。在某些情況下,將字體的 Cache-Control 設為 no-cache 可能會導致 IE 忽略透過 HTTPS 下載的字體。
解決方案:
解決此難題在於刪除 Cache-Control 標頭或將其設定為允許快取的不同值。透過這樣做,IE 將停止忽略下載的字體並透過 HTTPS 正確呈現它。
其他見解:
值得注意的是,此行為可能與 KB 815313 相關,它禁止在透過 SSL 下載活動文件期間進行快取。了解這種相關性可以幫助開發人員識別並修正其 Web 應用程式中的類似問題。
以上是為什麼在 IE7、8 和 9 中 EOT 字體無法透過 HTTPS 載入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!