Скрепка работает для изображений, но не для файлов PDF - PullRequest
0 голосов
/ 11 января 2012

У меня есть приложение Rails 3.1, которое использует Paperclip. Он отлично работает локально, но на сервере я не могу заставить работать загрузку PDF. Изображения PNG и JPG работают отлично.

При попытке сохранить запись с вложением в формате PDF я получаю следующую ошибку:

Avatar /tmp/stream20120110-10803-1whykjx-0.pdf is not recognized by the 'identify' command.
Avatar /tmp/stream20120110-10803-1whykjx-0.pdf is not recognized by the 'identify' command.

Я проверил логи Apache, которые показывают следующее:

sh: gs: not found
identify: Postscript delegate failed `/tmp/stream20120110-5508-or6g2v-0.pdf': No such file or directory @ pdf.c/ReadPDFImage/634.
sh: gs: not found
identify: Postscript delegate failed `/tmp/stream20120110-5508-or6g2v-0.pdf': No such file or directory @ pdf.c/ReadPDFImage/634.
cache: [POST /courses] invalidate, pass
sh: gs: not found
identify: Postscript delegate failed `/tmp/stream20120110-5508-vgyyz8-0.pdf': No such file or directory @ pdf.c/ReadPDFImage/634.
sh: gs: not found
identify: Postscript delegate failed `/tmp/stream20120110-5508-vgyyz8-0.pdf': No such file or directory @ pdf.c/ReadPDFImage/634.
cache: [POST /courses] invalidate, pass

Я не могу понять, где проблема, Imagemagick установлен на сервере (на котором работает Ubuntu), и файлы изображений работают отлично. Я не вижу никаких ссылок на ограничение размера файла, поэтому я не думаю, что это так.

Любая помощь приветствуется!

EDIT:

Просто чтобы подтвердить, что я посмотрел вопрос «не распознал» и т. Д. И попытался добавить в файл среды production.rb следующее:

Paperclip.options[:command_path] = "/usr/bin/identify"

но это не имело значения.

1 Ответ

1 голос
/ 11 января 2012

Для всех, кто заинтересован, я предпринял следующие шаги, чтобы исправить это. Обратите внимание, что мне не нужно изменять размер изображения, миниатюры и т. Д.

Я изменил код модели, который был таким:

class User < ActiveRecord::Base
  has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" }
end

к этому:

class User < ActiveRecord::Base
  has_attached_file :avatar
end
...