我正在使用bootstrap-sass-rails this issue,当我在生产模式下运行rails项目时,我得到3x 404错误:
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)
我使用了rake资产:预编译RAILS_ENV = production来生成带有结果的静态文件:
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 ...
除了这3个字体文件外,所有资产都正常运行。我整天都在搜索,但没有找到任何东西。似乎rails正在寻找没有这三个文件的哈希的版本,但是rake用哈希
生成它们我的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
修改
我试图覆盖@ font-face变量但它似乎没有删除旧变量:
@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');
}
我现在加载了glyphicons,但仍然有3x 404错误。
答案 0 :(得分:5)
好的。
我切换到https://github.com/thomas-mcdonald/bootstrap-sass。 相同的bootstrap版本并没有问题。
编辑更新
bootstrap-sass已更新。如果仍有404错误,您需要按照github页面上的说明进行一些更改。
答案 1 :(得分:3)
我遇到了同样的问题。事实证明,我必须在@import "bootstrap-sprockets"
内@import "bootstrap"
之外添加application.css.sass
。
答案 2 :(得分:2)
将MIME类型添加到您的网络服务器中。
您必须定义如何提供woff文件。
对于IIS,转到IIS并打开MINE类型窗口
点击添加,然后输入" woff "对于第一个输入框 和" application / x-font-woff "第二个方框
然后重复其他扩展
祝你好运答案 3 :(得分:1)
字体目录不会自动被视为资产目录。您需要通过在config.assets.paths << Rails.root.join("app", "assets", "fonts")
文件中设置application.rb
来明确添加它。