Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Bootstrap glyphicons error 404 in production

I'm using bootstrap-sass-rails this issue and when I run my rails project in production mode I get 3x 404 errors:

GET http://localhost:3000/assets/twitter/bootstrap/glyphicons-halflings-regular.woff 404 (Not Found) assets/twitter/bootstrap/glyphicons-halflings-regular.woff:1
GET http://localhost:3000/assets/twitter/bootstrap/glyphicons-halflings-regular.ttf 404 (Not Found) assets/twitter/bootstrap/glyphicons-halflings-regular.ttf:1
GET http://localhost:3000/assets/twitter/bootstrap/glyphicons-halflings-regular.svg 404 (Not Found) 

I used rake assets:precompile RAILS_ENV=production to generate static files with result :

I, [2013-11-07T16:52:25.269370 #12948]  INFO -- : Writing myproject/public/assets/application-3517eb39b597107b3dbccbcbf4f0b3cc.js
I, [2013-11-07T16:52:25.315358 #12948]  INFO -- : Writing myproject/public/assets/application-1459bfe79a6477170658d53257e4a8fd.css
I, [2013-11-07T16:52:25.334356 #12948]  INFO -- : Writing myproject/public/assets/twitter/bootstrap/glyphicons-halflings-regular-8b1bdc16b9e098d67afebbf8d59fcea7.eot
I, [2013-11-07T16:52:25.345360 #12948]  INFO -- : Writing myproject/public/assets/twitter/bootstrap/glyphicons-halflings-regular-8d8305e5b6a807076d3ec68e2f190674.svg
I, [2013-11-07T16:52:25.357360 #12948]  INFO -- : Writing myproject/public/assets/twitter/bootstrap/glyphicons-halflings-regular-946071b70245967633bb3a774c60f3a3.ttf
I, [2013-11-07T16:52:25.367360 #12948]  INFO -- : Writing myproject/public/assets/twitter/bootstrap/glyphicons-halflings-regular-d7e2274ad1d940a0b2ce7480810ab223.woff
etc ...

All assets are working fine except these 3 font files. I searched all day long and didn't find anything. It seems rails is looking for the version without hash of these 3 files but rake generates them with hash

my config/production.rb :

  config.cache_classes = true
  config.eager_load = true
  config.consider_all_requests_local       = false
  config.action_controller.perform_caching = true
  config.serve_static_assets = true
  config.assets.js_compressor = :uglifier
  config.assets.compile = false
  config.assets.digest = true
  config.assets.version = '1.0'
  config.log_level = :info
  config.i18n.fallbacks = true
  config.active_support.deprecation = :notify

EDIT

I tried to override the @font-face variable but it doesn't seem to remove old variables:

@font-face {
  font-family: 'Glyphicons Halflings';
  src: asset-url('twitter/bootstrap/glyphicons-halflings-regular.eot',font);
  src: asset-url('twitter/bootstrap/glyphicons-halflings-regular.eot?#iefix',font) format('embedded-opentype'), asset-url('twitter/bootstrap/glyphicons-halflings-regular.woff',font) format('woff'), asset-url('twitter/bootstrap/glyphicons-halflings-regular.ttf',font) format('truetype'), asset-url('twitter/bootstrap/glyphicons-halflings-regular.svg#glyphicons-halflingsregular',font) format('svg');
}

I now have glyphicons loaded but still 3x 404 errors.

like image 642
YoyoS Avatar asked Nov 07 '13 15:11

YoyoS


3 Answers

Ok then.

I switched to https://github.com/thomas-mcdonald/bootstrap-sass . Pretty same bootstrap version and no problem with it.

EDIT UPDATE

bootstrap-sass has been updated. You need to make some changes as explained on github page if you still have 404 errors.

like image 74
YoyoS Avatar answered Sep 19 '22 21:09

YoyoS


I had the same problem. It turned out that I had to add @import "bootstrap-sprockets" in addition to @import "bootstrap" inside application.css.sass.

like image 27
Markus Graf Avatar answered Sep 21 '22 21:09

Markus Graf


ADD MIME TYPE into your webserver.

You have to define how to provide woff file.

for IIS, go to your IIS and open MINE type window

click ADD and type "woff" for first input box and "application/x-font-woff" for second box

then repeat for other extensions

good luck

like image 39
Sam Avatar answered Sep 21 '22 21:09

Sam