Предупреждение Google: ресурс интерпретируется как шрифт, но передается с помощью приложения типа MIME/octet-stream
У меня есть предупреждение в Google для моего шрифта:
ресурс интерпретируется как шрифт, но передается с помощью приложения типа MIME/octet-stream: ".../Содержание/шрифты/iconFont.ТЦФ."
он работает, даже если у меня есть это предупреждение, но я предпочитаю избегать этого предупреждения.
вот мое заявление:
@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;
}
Я уже ищу на других сообщениях, но пока не повезло.
обратите внимание, что мой сервер IIS от Microsoft.
любая идея, как я могу избежать этого предупреждения?
спасибо.
7 ответов
другой подход здесь: http://zduck.com/2013/google-chrome-and-woff-font-mime-type-warnings/
используйте настройки ниже в интернете.config:
<system.webServer>
<staticContent>
<mimeMap fileExtension=".woff" mimeType="application/font-woff"/>
</staticContent>
</system.webServer>
вам нужно добавить следующие типы в an .htaccess / IIS:
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/font-woff .woff
обновление .вуф типа:
AddType application/x-font-woff .woff
(спасибо @renadeen в комментариях ниже за указание на это.)
проверьте мой ответ на аналогичный вопрос здесь:шрифт не загружен
Взято отсюда: проблема с шрифтом в chrome.
Спасибо за приведенный выше ответ @97ldave, вы можете добавить эти типы в раздел конфигурации веб-сервера IIS, если вы не хотите добавлять их непосредственно в типы MIME в настройке IIS. Ниже приведен пример добавления just the .тип woff, который отсутствовал в нашей конфигурации. Это исправило проблемы со шрифтами, не появляющимися в последней версии Safari (6.0.3) на моем iMac.
<system.webServer>
<staticContent>
<remove fileExtension=".woff" />
<mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
</staticContent>
</system.webServer>
спасибо Джону Сэмвел (мой коллега) для нахождения этого.
для Nginx: (путь: / etc/nginx / mime.типы)
font/ttf ttf;
font/otf otf;
application/x-font-woff woff;
вам не нужно application/vnd.ms-fontobject eot;
потому что она уже существует.
после этого перезапустите Nginx:service nginx restart
сделано.
правильные типы MIME для шрифтов:
application/font-ttf ttf;
application/font-otf otf;
application/font-woff woff;
Если вы запускаете сервер с nodeJS, это хороший модуль для сопоставления типов mime
https://github.com/broofa/node-mime
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'
спасибо @The-senator и @97ldave за их ответы
для меня ошибка полностью исчезает сразу после добавления этих строк в сеть.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>