Я добавил эти правила в mime.types
:
application/x-font-ttf ttf;
font/opentype otf;
application/vnd.ms-fontobject eot;
font/x-woff woff;
Теперь заголовок Content-Type устанавливается правильно для каждого из них. Моя единственная проблема сейчас заключается в том, что Firefox требует Access-Control-Allow-Origin. Я нашел этот ответ в Google и добавил его в директиву моего сервера:
location ~* \.(eot|ttf|woff)$ {
add_header Access-Control-Allow-Origin *;
}
но теперь мои шрифты не обслуживаются вообще.
Вместо error.log
этого он сообщает, что пытается открыть их в локальной файловой системе.
2010/10/02 22:20:21 [ошибка] 1641 # 0: * 15 open () "/usr/local/nginx/html/fonts/mgopenmodernabold-webfont.woff" не удалось (2: такого файла или каталога нет) , клиент: 69.164.216.142, сервер: static.arounds.org, запрос: «HEAD /fonts/mgopenmodernabold-webfont.woff HTTP / 1.1», хост: «static.arounds.org»
Есть идеи, что может быть с синтаксисом? Нужно ли явно добавлять правило, гласящее: не пытайтесь открыть его локально или как?
РЕДАКТИРОВАТЬ : Я думаю, что проблема в том, что я обслуживаю 2 разных местах сейчас. И вместо этого я должен выполнить проверку регулярных выражений внутри основного, а затем передать заголовок.
источник
Ответы:
Woot! Понял .. Это было в значительной степени то, что я подозревал в моем редактировании, я должен был в основном сделать проверку имени файла регулярного выражения в моей единственной
location {}
вместо того, чтобы сделать альтернативную.источник
источник
Все активы
Это заставит все активы работать нормально. Вы можете добавить,
root
если вы хотите определить новое местоположениеисточник
другое решение: поместите все свои шрифты, например
static/fonts
, и добавьтеисточник