簡體   English   中英

Rails 4在生產中找不到字體

[英]Rails 4 can't find fonts in production

場景:我有一個Rails 4.0.0應用程序,使用capistrano進行部署,該應用程序在我的生產服務器上預編譯了我的資產。

問題:我正在嘗試添加字體並將其與@ font-face一起使用。 它在本地工作,但不適用於生產。

錯誤消息: “無法加載資源:服務器響應狀態為404(未找到)”

我的字體位於app / assets / fonts /

我的相關文件:

app / assets / stylesheets / application.css.scss:

/*
 * This is a manifest file yada yada yada...
 *
 *= require bootstrap
 *= require_self
 *= require_tree .
 */

@font-face {
  font-family: 'stone_sansregular';
  src: url(font-path('stone_sans_regular-webfont.eot') + "?#iefix") format('embedded-opentype'),
    url(font-path('stone_sans_regular-webfont.woff')) format('woff'),
    url(font-path('stone_sans_regular-webfont.ttf'))  format('truetype'),
    url(font-path('stone_sans_regular-webfont.svg') + "#stone_sansregular") format('svg');
}

config / application.rb:

config.assets.paths << Rails.root.join("app", "assets", "fonts")

我已經在一些SO帖子和其他來源中尋找答案,但似乎無法正確回答。 順便說一句,我沒有在Heroku上部署。 我想念什么? 我感謝您的幫助。

編輯:在生產中,我在假定字體的位置找到了字體: my-rails-app / current / public / @ assets / fonts

當我意識到我的font-awesome.css文件實際上並沒有投入生產時,我剛剛解決了一個類似的問題。 我必須做

*= require font-awesome.css

代替

@import "font-awsome.css";

在我的application.css.scss清單中。

另外,對於添加到文件名上的MD5哈希,我不確定是否是一個問題,但最終我這樣做了:

font-url('fontawesome-webfont.eot');

而不是

url(font-path('fontawesome-webfont.eot')

因此,即使是一個問題,我也可以肯定地使用font-url可以正確處理它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM