質問

Ruby on Rails に写真をアップロードしようとするとhttp://github.com/thoughtbot/paperclip "rel =" nofollow noreferrer "> Paperclip をローカルマシンで完全に動作させます。

LinuxでPaperclipを使用してRuby on Railsで写真をアップロードしようとすると( CentOS 5.2)Apacheと Phusion Passenger を搭載したサーバー、次のようになります:

2 errors prohibited this user from being saved
There were problems with the following fields:
- Avatar /tmp/stream20091026-21120-1qdbnul-0 is not recognized by the 'identify' command.
- Avatar /tmp/stream20091026-21120-1qdbnul-0 is not recognized by the 'identify' command.

追加しようとしました:

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

production.rbに変更しましたが、違いはありませんでした。

ログファイルに次のエラーが表示されます:

  

パラメータ:{" commit" =>"アップロード&quot ;,   " action" =>" update"、" _method" =>" put&quot ;、   " authenticity_token" =>" 419410afc22737cd2f6b6096a95327db76a48ba9 ''、   " controller" =>" users&quot ;,   " user" => {"アバター" =>#}}   [ペーパークリップ]添付ファイルを保存しています。   [ペーパークリップ]エラーを受信しました   処理中:

           

/ tmp / stream20091026-20752-1g568yk-0は   「識別」によって認識されない   コマンド。

役に立ちましたか?

解決

Identifyは、 ImageMagick パッケージ内のコマンドラインユーティリティです。

ホームページから:

  

識別プログラムは、   1つまたは   より多くの画像ファイル。また、も報告します   画像が不完全または破損しています。の   返される情報には   画像番号、ファイル名、幅   画像の高さ、   画像がカラーマッピングされているかどうか、   画像の色数、   画像のバイト数、   画像の形式(JPEG、PNMなど)、   そして最後に秒数   画像を読み取って処理しました。   さらに多くの属性が利用可能です   詳細オプションを使用します。

最初に、サーバー上のイメージをコピーし、その上で識別コマンドを実行します。次のようなものを受け取るはずです:

identify ~/capture.jpg 
capture.jpg JPEG 1216x244 1216x244+0+0 8-bit DirectClass 97.7kb

エラーが発生した場合は、サーバー上のImageMagickパッケージをアップグレードしてください。更新されたバイナリリリースはここにあります。 http://www.imagemagick.org/script/binary-releases.php

他のヒント

同じ場合、imagemagicを再インストールすると解決しました(ubuntu 12.10)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top