Mam aplikację Rails 4.0.0, wdrażającą za pomocą capistrano, która prekompiluje moje zasoby na moim serwerze produkcyjnym.Szyny 4 nie mogą znaleźć czcionek w produkcji
Problem: Próbuję dodać czcionkę i używać jej z @ font-face. Działa lokalnie, ale nie w produkcji.
Komunikat o błędzie: "Nie udało się załadować zasób: serwer odpowiedział ze statusem 404 (nie znaleziono)"
Moi czcionki znajdują się w app/aktywów/czcionki/
Moi odpowiednie pliki:
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/environment.rb:
config.assets.paths << Rails.root.join("app", "assets", "fonts")
Szukałem odpowiedzi na kilka stanowisk SO i inne źródła, ale nie wydaje się uzyskać to prawo. Btw, nie wdrażam na Heroku. czego mi brakuje? Doceniam twoją pomoc.
EDIT: W produkcji znajdę fonty gdzie zakładają powinny one być: moi szynach-app/aktualne/public/@ aktywa/czcionek
Czy to jest prawdziwe rozszerzenie pliku -> app/assets/stylesheets/application.css.scss.css? To powinno być tylko .css.scss – Severin
Och, przepraszam, nie, to tylko .css.scss (edytowane) – Majoren
Zastanawiam się, czy to może mieć coś wspólnego z hash MD5, który jest dodawany do nazw plików po kompilacji? Ponieważ w konsoli wygląda na to, że próbuje znaleźć plik bez tego rozszerzenia, tak jak podczas uruchamiania lokalnie. – Majoren