0

我在我们的生产服务器(nginx + 乘客 3)上遇到了一个 rails (3.2.6) 应用程序的问题。之后

rake assets:precompile

一个静态页面就像一个魅力,但几分钟后我收到一个现有图像的资产未找到错误。如果我再次重新编译资产,它可以工作,但几分钟后,rails 再次引发 file-not-found 错误。

在这里可以看到 production.rb 和 Gemfile:https ://gist.github.com/3937589

4

1 回答 1

0
  • 有什么方法可以让您的代码对 /public 文件夹进行任何操作?
  • 您是否验证过相关资产确实在 /public 文件夹中?
  • 是否有可能会干扰您的文件系统的 cron 作业或其他工作进程?

assets:precompile 所做的只是简单地处理您的应用程序/资产并将它们复制到/public/assets.

它通常有 3 个优点:未压缩的原始文件、原始文件 + 从帮助程序 ( asset_path) 和 gzip 压缩文件引用时使用的哈希。

您可以简单地转到您的生产服务器并查看/public/assets以验证是否缺少任何内容。如果文件在那里并且用户仍然收到错误,我会查看我的 nginx 配置。

于 2012-10-23T08:38:04.893 回答