Я пытаюсь использовать шрифты Awesome на моем Rails 4 приложении. Шрифты очень хорошо работают над разработкой, но по производству не работает.Rails 4 шрифты, не работающие над производством
Активы предварительно скомпилированы на сервере при развертывании с помощью capistrano.
Все файлы CSS, JS (в приложении/активах/* и поставщике/активах/*) работают ... только шрифты нет.
Если я запустить приложение на моей машине развития, как производство, он работает:
RAILS_ENV=production bin/rails s -b 0.0.0.0
Только когда я отправьте производство хозяину (VPS с пассажирским + Ngnix), что шрифты DonT работает
, что у меня есть:
# config/initializers/assets.rb
# Add additional assets to the asset load path
# Rails.application.config.assets.paths << Emoji.images_path
Rails.application.config.assets.precompile << /\.(?:svg|eot|woff|woff2|ttf)\z/
И ...
# config/environments/production.rb
# ...
config.assets.compile = true
Объявление наконец:
# app/assets/stylesheets.css.erb
@font-face {
font-family: 'FontAwesome';
src: url("<%= font_path('Font-Awesome/fontawesome-webfont.eot') %>?v=4.3.0");
src: url("<%= font_path('Font-Awesome/fontawesome-webfont.eot') %>?#iefix&v=4.3.0") format('embedded-opentype'),
url("<%= font_path('Font-Awesome/fontawesome-webfont.woff2') %>?v=4.3.0") format('woff2'),
url("<%= font_path('Font-Awesome/fontawesome-webfont.woff') %>?v=4.3.0") format('woff'),
url("<%= font_path('Font-Awesome/fontawesome-webfont.ttf') %>?v=4.3.0") format('truetype'),
url("<%= font_path('Font-Awesome/fontawesome-webfont.svg') %>?v=4.3.0#fontawesomeregular") format('svg');
font-weight: normal;
font-style: normal;
}
шрифты расположены по адресу: vendor/assets/fonts/Font-Awesome/fontawesome-*
То, что я не понимаю, что по развитию она работает, и у меня есть другое приложение на Heroku с той же конфигурацией и шрифты работает очень хорошо.
Если я перехожу на свой сервер с использованием SSH и запускаю ls my_app/public/assets
, я могу предварительно скомпилировать все мои активы (css, javascripts и fons).
Что мне не хватает?
попробуйте 'asset-path' вместо' font_path'. – rodic
с использованием 'asset-path' вызывает ошибку:' undefined local variable или method 'asset' for' – psantos
sry, typo, вы должны использовать подчеркивание. http://api.rubyonrails.org/classes/ActionView/Helpers/AssetUrlHelper.html#method-i-asset_path – rodic