ruby-on-rails - Rails 5 - 供应商 Assets 未加载到生产中(仅字体)

标签 ruby-on-rails fonts capistrano ruby-on-rails-5

它在开发中工作得很好,但在生产中却不行。它没有找到以下文件:

/assets/fontello.woff
/assets/fontello.ttf

这是设置:

  1. 字体文件:

enter image description here

  • assets.rb

    Rails.application.config.assets.paths << Rails.root.join('app', 'vendor', 'assets', 'fonts')
    Rails.application.config.assets.precompile << /\.(?:svg|eot|woff|ttf)\z/
    
  • fontello.css

    @font-face {
      font-family: 'fontello';
        src: url('/assets/fontello.eot');
        src: url('/assets/fontello.eot#iefix') format('embedded-opentype'),
        url('/assets/fontello.woff') format('woff'),
        url('/assets/fontello.ttf') format('truetype'),
        url('/assets/fontello.svg#fontello') format('svg');
      font-weight: normal;
      font-style: normal;
    }
    
  • 正如我所说,开发中一切正常。我已经尝试了很多事情。例如:

    1. 移动公共(public)文件夹中的字体(因为我的图像已加载)
    2. assets.rb 中添加以下行:

      Rails.application.config.assets.precompile += [/^[-_a-zA-Z0-9]*\..*/]
      

    但没有任何效果。

    您能建议其他尝试吗?

    最佳答案

    ls public/assets 在生产中输出什么?

    可能您的文件带有摘要(例如fontello-XXXX.ttf)。在这种情况下,您必须使用 font helpers在你的 sass (不是 css)中 - 例如。在你的 font-family block 中:src:font-url('fontello.ttf')

    关于ruby-on-rails - Rails 5 - 供应商 Assets 未加载到生产中(仅字体),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41779180/

    相关文章:

    mysql - 使用 Rails + MySql 的 Web 服务最佳实践

    ruby-on-rails - Mocha : stubbing method with specific parameter but not for other parameters

    ruby-on-rails - 如何让 unicorn 在路径下运行 Rails 3.0 应用程序?

    java - LWJGL - 加载声音和字体而不平滑

    android - 有没有办法专门为Android指定CSS

    ruby-on-rails - 使用 Capistrano 在生产中将 rpush 作为守护进程运行

    ruby-on-rails - getaddrinfo : nodename nor servname provided, 或未知

    javascript - 在 HTML 中传递 javascript 选项

    ruby-on-rails-3 - Capistrano 3 运行每个命令两次(新安装)- 配置问题

    php - 使用 imagettftext() 时如何处理字体文件不支持的字符?