Google警告:资源被解释为字体,但使用MIME类型application/octet-stream进行传输

Bro*_*ato 68 css font-face

我在Google上收到了一条警告:

资源解释为Font但使用MIME类型application/octet-stream传输:".../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;
}
Run Code Online (Sandbox Code Playgroud)

我已经搜索了其他帖子但到目前为止没有运气.

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

任何想法我怎么能避免这个警告?

谢谢.

97l*_*ave 88

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

AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/font-woff .woff  
Run Code Online (Sandbox Code Playgroud)

更新了.woff类型:

AddType application/x-font-woff .woff
Run Code Online (Sandbox Code Playgroud)

(感谢@renadeen在下面的评论中指出这一点.)

在这里查看我对类似问题的答案:Font Face未加载

从这里采取:chrome中的font-face问题.

  • 根据[这个答案](http://stackoverflow.com/a/5142316/907467)`application/x-font-woff`成为`application/font-woff`. (11认同)

The*_*tor 46

感谢上面的回答@97ldave,如果您不想将这些类型直接添加到IIS设置中的MIME类型,则可以将这些类型添加到IIS webServer配置部分.以下显示了仅添加配置中缺少的.woff类型的示例.这解决了我的iMac上最新版本的Safari(6.0.3)中没有出现的字体问题.

<system.webServer>
<staticContent>
  <remove fileExtension=".woff" />
  <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
</staticContent>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

感谢Jon Samwell(我的同事)找到了这个.

  • 我想[对目前接受的答案的评论](http://stackoverflow.com/questions/15521130/google-warning-resource-interpreted-as-font-but-transferred-with-mime-type-appl#comment26019030_15522254关于从mime类型中删除`x-`也适用于这个答案. (5认同)
  • 谢谢!我还根据你的答案添加了这两行(Semantic-UI使用它)<remove fileExtension =".woff**2**"/> <mimeMap fileExtension =".woff**2**"mimeType =" application/x-font-woff"/> (2认同)

Ste*_*ven 26

对于Nginx :(路径:/etc/nginx/mime.types)

font/ttf                         ttf;
font/otf                         otf;
application/x-font-woff          woff;
Run Code Online (Sandbox Code Playgroud)

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

之后重启Nginx: service nginx restart

完成.

  • 对我来说,'application/font-woff`有效. (4认同)

TeY*_*YoU 14

另一种方法:http://zduck.com/2013/google-chrome-and-woff-font-mime-type-warnings/

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

<system.webServer>
<staticContent>
  <mimeMap fileExtension=".woff" mimeType="application/font-woff"/>
</staticContent>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)


Sve*_*ven 10

正确的字体MIME类型是:

application/font-ttf              ttf;
application/font-otf              otf;
application/font-woff             woff;
Run Code Online (Sandbox Code Playgroud)