在暂存环境中不显示带有twitter-bootstrap-rails的fontawesome图标 [英] fontawesome icons with twitter-bootstrap-rails doesn't show on staging environment
问题描述
带有twitter-bootstrap-rails(2.2.8)gem的Rails(3.1.2)应用程序. 该应用程序在视图中使用字体真棒图标. application.css.scss包含
Rails (3.1.2) application with the twitter-bootstrap-rails (2.2.8) gem. The application uses font awesome icons in views. The application.css.scss contains
@import"bootstrap_and_overrides";
@import "bootstrap_and_overrides";
bootstrap_and_overrides.css.less
bootstrap_and_overrides.css.less
@import "twitter/bootstrap/bootstrap";
@import "twitter/bootstrap/responsive";
// Set the correct sprite paths
@iconSpritePath: image-url("twitter/bootstrap/glyphicons-halflings.png");
@iconWhiteSpritePath: image-url("twitter/bootstrap/glyphicons-halflings-white.png");
// Set the Font Awesome (Font Awesome is default. You can disable by commenting below lines)
@fontAwesomeEotPath: asset-url("fontawesome-webfont.eot");
@fontAwesomeEotPath_iefix: asset-url("fontawesome-webfont.eot?#iefix");
@fontAwesomeWoffPath: asset-url("fontawesome-webfont.woff");
@fontAwesomeTtfPath: asset-url("fontawesome-webfont.ttf");
@fontAwesomeSvgPath: asset-url("fontawesome-webfont.svg#fontawesomeregular");
// Font Awesome
@import "fontawesome/font-awesome";
在本地开发环境中,一切正常. 使用Capistrano部署到暂存环境后,图标未显示在浏览器中.
On the local development environment everything is ok. After deployment with Capistrano to a staging environment, the icons are not showing up in the browsers.
相反,在服务器控制台和浏览器网络监视器中,necesarry fontawesome字体文件显示404错误.
Instead in the server console and in the browsers network monitor an 404 error shows up for the necesarry fontawesome font files.
Started GET "/assets/fontawesome-webfont.woff"
Served asset /fontawesome-webfont.woff - 404 Not Found (2ms)
ActionController::RoutingError (No route matches [GET] "/assets/fontawesome-webfont.woff"):
cache: [GET /assets/fontawesome-webfont.ttf] miss
Started GET "/assets/fontawesome-webfont.ttf"
Served asset /fontawesome-webfont.ttf - 404 Not Found (2ms)
ActionController::RoutingError (No route matches [GET] "/assets/fontawesome-webfont.ttf"):
cache: [GET /assets/fontawesome-webfont.svg] miss
Started GET "/assets/fontawesome-webfont.svg"
Served asset /fontawesome-webfont.svg - 404 Not Found (4ms)
ActionController::RoutingError (No route matches [GET] "/assets/fontawesome-webfont.svg"):
关于404错误,请在登台服务器上的相应文件夹中查找
Concerning the 404 errors, looking in the appropriate folder on the staging server
[root@j87849 assets]# ls -l
total 840
-rw-rw-r-- 1 deploy deploy 288667 21. Apr 20:01 application.css
-rw-rw-r-- 1 deploy deploy 32651 21. Apr 20:01 application.css.gz
-rw-rw-r-- 1 deploy deploy 295 21. Apr 20:01 application.js
-rw-rw-r-- 1 deploy deploy 197 21. Apr 20:01 application.js.gz
-rwxr-xr-x 1 deploy deploy 37405 5. Apr 20:18 fontawesome-webfont.eot
-rwxr-xr-x 1 deploy deploy 197829 5. Apr 20:18 fontawesome-webfont.svg
-rwxr-xr-x 1 deploy deploy 79076 5. Apr 20:18 fontawesome-webfont.ttf
-rwxr-xr-x 1 deploy deploy 43572 5. Apr 20:18 fontawesome-webfont.woff
推荐答案
更新到Rails 3.2解决了该问题
Update to Rails 3.2 solved the issue
这篇关于在暂存环境中不显示带有twitter-bootstrap-rails的fontawesome图标的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!