【问题标题】:How to use asset_path with files on Nginx如何将asset_path与Nginx上的文件一起使用
【发布时间】:2013-11-08 22:26:41
【问题描述】:

我的理解是,在生产中,类似下面的内容会产生一个带有哈希的路径,后跟foo.img

<%= asset_path 'foo.img' %>

但是,如果我将文件 foo.img 不是放在 Rails 应用程序中,而是放在 Nginx 反向代理中(因此没有任何前缀哈希),那么我应该如何引用正确的路径?如果asset_path 将生成带有哈希前缀的路径,那么我如何让它引用正确的路径,以便图像请求将命中 Nginx 的foo.img

我想为生产预编译并将其复制到 nginx 知道的目录吗?

【问题讨论】:

  • 你的最后一句话正是你应该做的。所有资产都应该写入公共目录,Nginx 只需要知道目录而不是单个文件。
  • @ssorallen:有没有一个教程来描述这个以及我在使用 Rails 设置 Nginx 时应该做的所有其他事情?
  • Rails 文档中关于资产“生产中”的部分有一些 Nginx 配置示例。整个部分值得一读:guides.rubyonrails.org/asset_pipeline.html#in-production

标签: ruby-on-rails asset-pipeline


【解决方案1】:

你可以通过config.assets.prefix设置url路径,查找assets的地方用config.assets.paths配置。

来自configuring assets上的指南:

config.assets.paths contains the paths which are used to look for assets. Appending paths to this configuration option will cause those paths to be used in the search for assets.

config.assets.prefix defines the prefix where assets are served from. Defaults to /assets.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-18
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多