Правильные директивы Apache AddType для шрифтов MIME-типов

Im использует @font-face для встроенных шрифтов (спасибо Paul Irish). Пытаясь исправить предупреждение Chromes о неправильном типе MIME для woff-шрифтов, Ive обнаружил массу противоречивых предложений.

Кажется, что все согласны с тем, что .eot шрифты (для IE 6-8?) должны обслуживаться с помощью

AddType application/vnd.ms-fontobject .eot

Для шрифтов .ttf(более старые не-IE-браузеры?) Я видел

AddType application/x-font-ttf        .ttf
AddType application/octet-stream      .ttf
AddType font/truetype                 .ttf
AddType font/ttf                      .ttf

И для .woff шрифтов (новый стандарт?) Ive видел

AddType application/font-wof          .woff
AddType application/x-font-woff       .woff
AddType application/x-woff            .woff

Я понимаю правильный тип MIME для woff будет application/font-woff, но пока стандарт не станет официальным, application/x-font-woff понимается в Chrome.

Я понимаю, что я ответил наполовину на свой вопрос, задавая вопрос, но на самом деле вопрос: есть ли какие-либо авторитетные рекомендации или дополнительные советы о том, какие типы MIME следует использовать для шрифтов?

Обновление (в случае его помощи кому-либо еще): поскольку, похоже, нет ничего авторитетного, Ive остановился на использовании следующих типов шрифтов MIME в моем .htaccess(который по крайней мере удерживает Chrome счастливым):

AddType application/vnd.ms-fontobject .eot
AddType application/x-font-ttf        .ttf
AddType application/x-font-woff       .woff

Ответ 1

Обычно типы MIME поступают из RFC. У вас есть исчерпывающий список на сайте IANA, но ни один из них не относится к расширению шрифтов. Кроме того, документ, описывающий формат WOFF, является черновиком и не ссылается на используемый тип mime. На данный момент достоверных ссылок на эту тему не существует.

Update

Теперь W3C выпустил WOFF как рекомендацию, а в Приложение B определил тип MIME как application/font-woff. Он также был добавлен в сайт IANA, о котором вы говорили сейчас. -GKFX

Ответ 2

Я понимаю, что этот вопрос старый, но для тех, кто ищет быструю копию/вставку для добавления типов шрифтов MIME в их .htaccess:

<IfModule mod_mime.c>
    AddType application/vnd.ms-fontobject    .eot
    AddType application/x-font-opentype      .otf
    AddType image/svg+xml                    .svg
    AddType application/x-font-ttf           .ttf
    AddType application/font-woff            .woff
    AddType application/font-woff2           .woff2
</IfModule>

Ответ 3

Я только что провел исследование по официальному списку IANA. Это, по-видимому, текущее состояние игры по состоянию на май 2013 года:

Эти три являются официальными и назначаются IANA:

  • svg as "image/svg + xml"
  • woff как "application/font-woff"
  • eot как "application/vnd.ms-fontobject"

Это не официальные/назначенные и поэтому должны использовать синтаксис "x-":

  • ttf как "application/x-font-ttf"
  • otf как "application/x-font-opentype"

Похоже, что тип 'font' не существует, поэтому любой тип времени, который вы видите 'font/xxx', является фиктивным. Возможно, "x-font/xxx" будет допустимым, а не уверенным. IIS8 поставляется с такими парами записей. Не уверен, что MS считает, что эти "font/xxx" необходимы для совместимости или если они просто не читают RFC: -)

Приложение/font-woff выглядит новым и, возможно, только официальным с января 2013 года. Поэтому "application/x-font-woff" может быть более безопасным/более совместимым в краткосрочной перспективе.