Я использую некоторые пользовательские шрифты в приложении Rails 4.1. Они находятся здесь:Конвейер Rails: почему мои пользовательские шрифты работают в разработке, но не в производстве?
app/assets/fonts/MyCustomFont.ttf
Я ссылки на них в моей таблице стилей (SASS):
@font-face
font-family: "MyCustomFont"
src: url("MyCustomFont.ttf") format('truetype')
h1
color: #fff
font-family: "MyCustomFont"
В режиме разработки, он правильно делает мой шрифт. Когда я раскрываю к производству, я вижу, шрифт, упомянутый в журнале:
** Execute assets:precompile
I, [2014-09-12T23:46:40.077333 #12473] INFO -- : Writing /var/www/apps/10121/releases/c655762f076df708896b622c12429c8bf76f21ec/public/assets/MyCustomFont-18108066511bb5b3ddfd0454b738e8d5.ttf
Однако, когда я загрузить страницу в браузере он не делает пользовательский шрифт. Консоль веб-инспектор показывает ошибку:
Failed to load resource: the server responded with a status of 404 (Not Found) http://example.com/assets/MyCustomFont.ttf
Когда я набираю в URL шрифта, используя имя файла, перечисленных в журнале:
http://example.com/assets/MyCustomFont-18108066511bb5b3ddfd0454b738e8d5.ttf
Затем браузер запускает загрузку файла. Так что кажется, что это просто вопрос ссылки на файл в неправильном месте.
Как я могу решить эту проблему и как правильно обращаться к шрифту, чтобы он работал в процессе производства при компиляции активов?
Вы пытались запустить 'rake assets: precompile' –
Как я уже сказал, активы компилируются при развертывании на производство (и даются образцы выходных данных журнала). Вы не хотите запускать эту команду в режиме разработки. – Andrew