字体真棒错误:可下载字体:被消毒剂拒绝

Posted

技术标签:

【中文标题】字体真棒错误:可下载字体:被消毒剂拒绝【英文标题】:Font Awesome error: downloadable font: rejected by sanitizer 【发布时间】:2016-09-22 14:35:55 【问题描述】:

可下载字体:被消毒剂拒绝(字体系列:“FontAwesome” 样式:正常重量:正常拉伸:正常 src 指数:1)来源: http://192.168.1.254/theme/font-awesome/fonts/fontawesome-webfont.woff2?v=4.6.3http://192.168.1.254/theme/font-awesome/css/font-awesome.min.css线 4

我一直在克服错误。我尝试了很多在互联网上找到的东西。 (在自己的服务器上托管字体)

CORS 问题 Web 服务器中的 MIME 类型标头配置

HTTP 标头和 MIME 类型的其他组合可以解决问题但没有任何解决方法。

【问题讨论】:

对我不起作用:这篇文章确实解决了错误***.com/questions/24104736/… @leonvr 正如我所说,即使在更新 Mime 类型后如果不起作用,这也可能是原因。你的肯定会卡在 mimetypes 上。 【参考方案1】:

从该块中删除 ?v=4.6.3 和剩余的尾部 (font-awesome.css / font-awesome.min.css)。

@font-face 
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.6.3');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3') format('embedded-opentype'), 
  url('../fonts/fontawesome-webfont.woff2?v=4.6.3') format('woff2'),
  url('../fonts/fontawesome-webfont.woff?v=4.6.3') format('woff'),
  url('../fonts/fontawesome-webfont.ttf?v=4.6.3') format('truetype'), 
  url('../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular') format('svg');
  font-weight: normal;

更新到:

@font-face 
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot');
  src: url('../fonts/fontawesome-webfont.eot') format('embedded-opentype'), 
  url('../fonts/fontawesome-webfont.woff2') format('woff2'), 
  url('../fonts/fontawesome-webfont.woff') format('woff'), 
  url('../fonts/fontawesome-webfont.ttf') format('truetype'), 
  url('../fonts/fontawesome-webfont.svg') format('svg');
  font-weight: normal;
  font-style: normal;

【讨论】:

@mayaa,就我而言,这是由于;我的网络服务器不接受/期望任何附加参数(使用 GET,但使用我不知道的 POST)与上述 url 调用。 我在 Chrome 中看到错误,例如 iis 返回 404.htm 与其中一些文件相关的请求相关,直到进行此更改【参考方案2】:

在我的例子中,我遇到了一个 SVG 加载器(vue-svg-loader 或 nuxt-svg-loader)的问题,它最终将字体 URL 转换为一个对象,结果如下:

@font-face
    font-family:fontello;
    ...
    src:url([object object]) format("svg");

【讨论】:

【参考方案3】:

如果您收到错误 fontawesome-webfont.woff2?v=4.6.3 not found 但您肯定知道您拥有该文件,请按照以下方法在 IIS 中修复它:

您需要在 woff2 的配置文件中添加 mime 类型。

<system.webServer>
<staticContent>
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".woff2" mimeType="font/woff2" />
</staticContent>
</system.webServer>

【讨论】:

你的回答成功了!我在 IIS 8 (W2012) 上收到此错误,但在 IIS 10 (w2016) 上一切正常。【参考方案4】:

抓到了!! 通过替换解决

font-family: 'fontawesome-webfont';

而不是

font-family: 'FontAwesome';

我为我工作。

【讨论】:

以上是关于字体真棒错误:可下载字体:被消毒剂拒绝的主要内容,如果未能解决你的问题,请参考以下文章

Htaccess 阻止字体 真棒网络字体?

Firefox 上的可下载字体:URI 错误或不允许跨站点访问

IIS 7 和字体真棒 .woff 404 错误

ng build 后,字体真棒字体未在 Angular 中加载

使用可下载字体作为自定义 Snackbar 字体

可下载字体 - 无法下载某些谷歌字体