首页 > web前端 > css教程 > 为什么我不能在 Firefox 中使用 @font-face 进行跨域字体嵌入?

为什么我不能在 Firefox 中使用 @font-face 进行跨域字体嵌入?

Mary-Kate Olsen
发布: 2024-11-27 06:21:10
原创
449 人浏览过

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

@font-face 的跨域字体嵌入问题

问题:

A开发人员正在尝试在子域上创建字体存储库并使用以下命令从其他网站访问字体@font-face 声明。但是,这些字体仅适用于它们托管的子域。

答案:

问题在于 Firefox 的安全机制。 Firefox 认为跨域 Web 字体嵌入存在潜在的安全风险。为了解决这个问题,用户可以将以下代码添加到托管字体的子域的顶级 .htaccess 文件中:

<FilesMatch "\.(ttf|ttc|otf|eot|woff)$">
    <IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin "*"
    </IfModule>
</FilesMatch>
登录后复制

此代码允许 Firefox 从子域加载字体,覆盖其默认安全措施.

对于限制对字体存储库的访问,Access-Control-Allow-Origin 的 W3C 规范仅支持通配符或特定域。没有直接的解决方案可以在不使用自定义身份验证机制的情况下将访问限制为仅授权用户。

以上是为什么我不能在 Firefox 中使用 @font-face 进行跨域字体嵌入?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板