Rails image_tag正在查看我的生产服务器上的资产!

时间:2009-10-13 00:51:19

标签: ruby-on-rails asset-management

我通过设置ActionController :: Base.asset_host来读取,您可以控制rails查找资产的位置。但是,默认情况下,Rails应该在'/ public /...'

中查找

不知何故,我的Rails应用程序知道在开发模式下查看我的生产地址,并且我没有在任何地方设置ActionController :: Base.asset_host。我不确定它在哪里找到这些信息。有没有其他地方可以设置?我不认为我的部署配方应该与它有任何关系......

<%= image_tag 'my_logo.png' %>

导致Rails检查我的生产服务器中的文件。与样式表相同。

1 个答案:

答案 0 :(得分:0)

我不太确定Rails如何知道寻找我的生产域名。我几乎在我的代码中删除了它。根据{{​​3}},“默认情况下,Rails链接到公共文件夹中当前主机上的这些资产”,但我不太清楚这意味着什么。为了防止再次出现问题并允许一些灵活的配置,我将资产主机域添加到我的环境配置中。我现在有类似的东西:

EnvironmentConfig = YAML.load(File.read(Rails.root + "config/#{rails_env}" + 'environment.yml'))[rails_env]

ActionController::Base.asset_host = EnvironmentConfig['asset_host']

现在一切都很好。仍然不知道Rails如何知道我的生产域。