无法从公共目录 - Rails提供字体文件

时间:2014-04-13 02:18:48

标签: ruby-on-rails ruby-on-rails-4 assets

我有一个.woff字体文件,目前位于 app / assets / fonts / myfont.woff ,从 myapp.com/assets/myfont.woff

我想将它从资产目录移到 public / fonts / myfont.woff 的公共目录,但出于某种原因,当我尝试在 myapp.com上访问它时/fonts/myfont.woff 我收到路由错误:

  

没有路线匹配[GET]“/字体/ myfont.woff”

它必须是MIME类型问题,因为我可以从同一位置提供文本文件,但我无法理解如何解决它,特别是因为相同的扩展从资源目录中提供而没有问题

1 个答案:

答案 0 :(得分:0)

检查您的服务器配置http://nginx.org/en/docs/beginners_guide.html

我想问题是你的网络服务器没有配置为来自/ public的服务器.woff文件,而只是/ public / assets,然后它将请求传递给rails,但是生产中的rails并不提供静态资产默认情况下(环境/ production.rb上的config.serve_static_assets = false)。

所以,转到你的网络服务器的配置文件并查看那里的规则,我猜你在某处丢失了一些.woff。

无论如何,为什么要将字体移动到/ public / fonts?这些文件是资产,/ public / assets / fonts是最适合他们的地方。

编辑:我猜你在生产模式下运行独角兽和你的rails服务器时本地也有同样的问题,你需要配置独角兽来提供静态资产,因为rails不会处理它们

相关问题