生产中的字体问题envirnment rails
我制作了一个rails(4.2.4)应用程序,它在开发环境中运行良好,但是当我在数字海洋上部署它时,它没有得到字体,有一个像
Failed to load resource: the server responded with a status of 404 (Not Found)
跟路一样
http://Server-IP/assets/raleway-bold.woff2
我尝试了许多组合来提供路径,但除了一个之外都是徒劳的,它在开发中有效,但在生产中却没有。
我的资产结构差别不大
assets - fonts - javascripts - stylesheets - admin - web - application.js - fonts.cs - application.cs
并在fonts.cs我提供路径
@font-face { font-family: 'dpdidot_htfm96medium'; src: url('/assets/dp_didot-htf-m96-medium-webfont.eot'); src: url('/assets/dp_didot-htf-m96-medium-webfont.eot?#iefix') format('embedded-opentype'), url('/assets/dp_didot-htf-m96-medium-webfont.woff2') format('woff2'), url('/assets/dp_didot-htf-m96-medium-webfont.woff') format('woff'), url('/assets/dp_didot-htf-m96-medium-webfont.ttf') format('truetype'), url('/assets/dp_didot-htf-m96-medium-webfont.svg#dpdidot_htfm96medium') format('svg'); font-weight: normal; font-style: normal; }
它出什么问题了
得到它了。 使用Rails的默认预编译资产只会生成application.js
和application.css
。 如果您希望预编译生成类似字体的解压缩资产,请将其添加到Rails.application.config.assets.precompile
这是示例。 您可以将其添加到assets.rb
Rails.application.config.assets.precompile += ['*.js', '*.css', '*.woff2', '*.woff']