Css Google警告:资源被解释为字体,但使用MIME类型应用程序/八位字节流传输

Css Google警告:资源被解释为字体,但使用MIME类型应用程序/八位字节流传输,css,font-face,Css,Font Face,我的字体在谷歌上有一个警告: 资源被解释为字体,但使用MIME类型应用程序/octet流传输:“…/Content/Fonts/iconFont.ttf”。 即使我有这个警告,它也能工作,但我宁愿避免这个警告 这是我的声明: @font-face { font-family: 'iconFont'; src: url('../Fonts/iconFont.eot?#iefix') format('embedded-opentype'), url('../Fonts/ic

我的字体在谷歌上有一个警告:

资源被解释为字体,但使用MIME类型应用程序/octet流传输:“…/Content/Fonts/iconFont.ttf”。

即使我有这个警告,它也能工作,但我宁愿避免这个警告

这是我的声明:

@font-face {
  font-family: 'iconFont';
     src: url('../Fonts/iconFont.eot?#iefix') format('embedded-opentype'), 
     url('../Fonts/iconFont.svg#iconFont') format('image/svg+xml'), 
     url('../Fonts/iconFont.woff') format('font/x-woff'), 
     url('../Fonts/iconFont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
我已经在其他帖子上搜索过了,但到目前为止运气不好

请注意,我的服务器是来自Microsoft的IIS

你知道我怎样才能避免这个警告吗


谢谢。

您需要将以下类型添加到.htaccess/IIS中:

AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/font-woff .woff  
已更新。woff类型来自:

AddType application/x-font-woff .woff
(感谢@renadeen在下面的评论中指出这一点。)

在这里查看我对类似问题的回答:


摘自此处:。

感谢上面的回答@97ldave,如果您不想在IIS设置中将这些类型直接添加到MIME类型中,可以将它们添加到IIS Web服务器配置部分。下面显示了一个仅添加配置中缺少的.woff类型的示例。这修复了iMac上最新版本Safari(6.0.3)中没有出现的字体问题

<system.webServer>
<staticContent>
  <remove fileExtension=".woff" />
  <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
</staticContent>
</system.webServer>

感谢Jon Samwell(我的同事)发现了这一点。

对于Nginx:(Path:/etc/Nginx/mime.types)

您不需要
application/vnd.ms-fontobject eot
因为它已经存在了

然后重新启动Nginx:
服务Nginx重新启动


完成。

这里有另一种方法:

在web.config上使用以下设置:

<system.webServer>
<staticContent>
  <mimeMap fileExtension=".woff" mimeType="application/font-woff"/>
</staticContent>
</system.webServer>

正确的字体MIME类型包括:

application/font-ttf              ttf;
application/font-otf              otf;
application/font-woff             woff;

如果您使用nodeJS运行服务器,这是一个很好的映射mime类型的模块


感谢@thesenator和@97ldave的回答

对我来说,在将这些行添加到web.config之后,错误就完全消失了

<system.webServer>
<staticContent>
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="application/x-font" />
      <remove fileExtension=".woff2" />
      <mimeMap fileExtension=".woff2" mimeType="application/x-font" />
    </staticContent>
</system.webServer>


谢谢你帮我省下另一个谷歌搜索:)没问题,伙计:)。|如果您使用font-awome()得到警告,只需将其放在Nginx Mime类型文件中:application/x-font-woff.woffI在我的文件末尾添加了这4行,但我仍然得到了错误。这需要多长时间才能工作?您是否尝试重置/重新启动web服务器?IIS?你也查看了我答案中的两个链接了吗?我没有使用web服务器-没有web服务器你怎么能解决这个问题?根据
application/x-font-woff
变成
application/font-woff
。@参议员:谢谢!我想从mime类型中删除
x-
也适用于这个答案。谢谢!我还根据您的答案添加了这两行(语义用户界面使用它),我添加了要点
var mime = require('mime');

mime.lookup('/path/to/file.txt');         // => 'text/plain'
mime.lookup('file.txt');                  // => 'text/plain'
mime.lookup('.TXT');                      // => 'text/plain'
mime.lookup('htm');                       // => 'text/html'

mime.extension('text/html');                 // => 'html'
mime.extension('application/octet-stream');  // => 'bin'
<system.webServer>
<staticContent>
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="application/x-font" />
      <remove fileExtension=".woff2" />
      <mimeMap fileExtension=".woff2" mimeType="application/x-font" />
    </staticContent>
</system.webServer>