【问题标题】:Dragonfly not working in production蜻蜓无法在生产中工作
【发布时间】:2013-04-30 07:52:09
【问题描述】:

我将 Dragonfly 与 Nginx、unicorn 和 mini_magick 一起使用。我在生产中使用 mem_cache_store。

图像上传和显示在开发环境中工作正常。但在生产中它失败并出现内部服务器错误 500。我在生产日志中看不到任何日志,但它在生产中失败。

以下类型的 URL 出现错误。 http://cdn.mydomain.com/media/BAhbB1sHOgZmSSIoMTAvcHJvZHVjdHMvMjUvR3JvdW5kJTIwbnV0XzQwOS5qcGcGOgZFVFsIOgZwOgp0aHVtYkkiCjUweDUwBjsGVA.jpg

错误码是500

我一直在搜索 gem 附带的所有文档。我还可以在生产中的中间件堆栈顶部看到以下中间件:

use Rack::Cache
use Dragonfly::CookieMonster
use Dragonfly::Middleware

我无法从论坛获得太多帮助 - 尽管 2 年前发布了一个类似的错误并且应该修复。那里的修复也没有帮助。

请帮助解决这个问题。关于如何调试它的任何方向也会有所帮助。

【问题讨论】:

  • 你能不能在本地“生产”运行它,让日志记录有用(例如打开consider_all_requests_local),看看日志中是否有任何有用的东西?

标签: ruby-on-rails nginx unicorn dragonfly-gem


【解决方案1】:

我遇到了这样的问题,结果发现问题是我没有在生产中安装 imagemagick。这篇文章帮助了我Dragonfly - Uploaded images not displayed

顺便说一句,我也没有看到任何日志。

【讨论】:

    【解决方案2】:

    你需要添加:

    Config.middleware.insert 0, Rack::Sendfile, config.action_dispatch.x_sendfile_header
    

    这样 sendfile 在 rack:cache 之前,它应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多