【问题标题】:Assets vs Public for static videos静态视频的资产与公共
【发布时间】:2014-02-24 22:43:29
【问题描述】:

我的 rails 应用程序中有一个静态视频。我有两份副本:一份存储在assets/videos,一份存储在public。出于某种原因,assets 文件夹中存储的视频加载速度比public 文件夹中存储的视频慢得多。

  1. 有人知道为什么吗?
  2. 最佳实践是什么?把它放在public 是不好的做法吗?

【问题讨论】:

    标签: ruby-on-rails video ruby-on-rails-4 html5-video asset-pipeline


    【解决方案1】:

    有人知道为什么吗?

    因为public 文件夹是处理传入请求的第一个位置。如果在该文件夹中找不到文件夹/文件,它将被转发到 rails。

    最佳做法是什么?把它公之于众是不好的做法吗?

    这取决于。如果您想使用 Rails 功能,例如使用 assets_path 访问视频文件夹,或者可能像使用某些 rails 脚本将视频从一种格式转换为两种格式,或者您想将视频限制在某些国家或地区或人/用户中,那么您不应该放入 @ 987654323@ 文件夹。 就是这样。

    【讨论】:

    • 这是一个非常有趣的考虑限制视频的观点。感谢您的回答!
    【解决方案2】:

    只有资产目录才需要如果你想利用 资产管道。资产管道处理来自 压缩和编译 .coffee 和 .less 或 sass 文件到 将您的 js 和 css 压缩到一个文件中,因此您的网络服务器只有 为每个文件提供一个文件。

    当您使用“rake task bundle exec rake assets:precompile”编译资产时,它们无论如何都会移动到您的公共目录

    查看此评论https://stackoverflow.com/a/8581316/1231365

    因此,最好将您的视频保存在公共文件夹中。

    【讨论】:

    • 两个答案都很好。你提出了一些关于视频和预编译的非常好的观点。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-19
    • 2010-10-19
    • 1970-01-01
    • 2017-01-04
    相关资源
    最近更新 更多