Paperclip PDF上传失败(在rails 3生产中"无法通过'识别'命令识别"?

Mar*_*ark 4 production ruby-on-rails passenger imagemagick paperclip

当我尝试使用回形针将PDF上传到生产服务器时,我收到错误:

"识别"命令无法识别pdf

我的模型看起来像这样:

has_attached_file :document, :styles => { :sm => {:geometry => "160x160>", :format => :png} }
Run Code Online (Sandbox Code Playgroud)

安装ImageMagick,并使用正确的路径进行配置以在production.rb中进行标识.在测试期间将照片上传到同一服务器,并且处理它们时没有错误.

我在这里找到了另一篇关于StackOverflow的帖子(奇怪的回形针错误信息),两者基本上都说同样的东西 - 从模型中删除:样式,因为imagemagick/identify无法从pdf创建缩略图.

但它适用于我的本地机器.上传pdf并生成png缩略图而不会出错.我正在运行乘客/ apache/mysql的mac(基本上尽可能地镜像生产).

任何想法为什么我得到生产错误,以及如何解决?

谢谢! - 标记

小智 6

听起来你没有安装Ghostscript.

ImageMagick依靠Ghostscript来处理PDF.在给定sample.pdf文件的情况下,您可以通过在服务器上运行以下命令来检查问题是否与ImageMagick/Ghostscript有关:

$ identify sample.pdf
Run Code Online (Sandbox Code Playgroud)

如果这返回错误,那么安装Ghostscript并再给它一次.