2014-05-15 71 views
7

我想上傳圖片與回形針AWS S3,但我得到這個錯誤回形針錯誤 - NotIdentifiedByImageMagickError

Command :: file -b --mime '/var/folders/d_/k4_ps9hj5fj_3df5t210vjym0000gn/T/2611a2396a4af6938e5c5867c8bb409f20140515-7787-1u773ft.jpg' 
Command :: identify -format '%wx%h,%[exif:orientation]' '/var/folders/d_/k4_ps9hj5fj_3df5t210vjym0000gn/T/2611a2396a4af6938e5c5867c8bb409f20140515-7787-1rep3kt.jpg[0]' 2>/dev/null 
[paperclip] An error was received while processing: #<Paperclip::Errors::NotIdentifiedByImageMagickError: Paperclip::Errors::NotIdentifiedByImageMagickError> 
Command :: identify -format '%wx%h,%[exif:orientation]' '/var/folders/d_/k4_ps9hj5fj_3df5t210vjym0000gn/T/2611a2396a4af6938e5c5867c8bb409f20140515-7787-1rep3kt.jpg[0]' 2>/dev/null 
[paperclip] An error was received while processing: #<Paperclip::Errors::NotIdentifiedByImageMagickError: Paperclip::Errors::NotIdentifiedByImageMagickError> 
Command :: file -b --mime '/var/folders/d_/k4_ps9hj5fj_3df5t210vjym0000gn/T/2611a2396a4af6938e5c5867c8bb409f20140515-7787-kfejir.jpg' 

在我的模型,我設置了這些樣式

has_attached_file :photo, :storage => :s3, :s3_credentials => "#{Rails.root}/config/s3.yml", :path => "/:style/:id/:filename", :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/assets/profile/iama.png" 

當我刪除這些風格,一切正常,但我真的需要它們。

我使用Rails 3.2.16

paperclip (4.1.1) 
     activemodel (>= 3.0.0) 
     activesupport (>= 3.0.0) 
     cocaine (~> 0.5.3) 
     mime-types 

我已經安裝ImageMagickrmagick寶石

請幫助我。

+2

你確定這是一個有效的jpeg嗎? –

回答

9

問題是我的ImageMagick沒有JPEG代表。我發現使用convert -list format。因此,我使用MacPorts重新安裝ImageMagick,並使用ImageMagick的新路徑重新安裝rmagick

+0

除了通過MacPorts安裝imagemagick(在brew brew卸載imagemagick之後),我還必須在我的development.rb中設置它:'Paperclip.options [:command_path] ='/ opt/local/bin'' – septerr

5

我有類似的問題,並更新imagemagick解決了。 您可能也想嘗試一下。

+1

更新ImageMagick已解決對我也是。 For Homebrew: 'brew upgrade imagemagick' –

0

我有同樣的問題,而且除了重新安裝一切(ImageMagick的,libtoolghostscriptjpeg),最後跑步的一般brew update && brew upgrade ,我也不得不重新鏈接freetype

brew unlink freetype && brew link freetype 
0

在我來說,我有一個骯髒的ImageMagick安裝(V7.0),我插件在使用rpm之前手動裝配。這一個並沒有向我展示ImageMagick所需的所有依賴關係,所以當Paperclip嘗試使用convert或identify命令時會崩潰。

我推薦Unix用戶使用yum或apt-get來正確安裝所有的依賴關係。另外建議安裝ghostscript,以防止命令識別和轉換無法從回形針召喚。

cd ImageMagick-7.0.3-0 
make uninstall 
yum install ImageMagick ImageMagick-devel 

請點擊此鏈接爲更具體的細節: How to Install ImageMagick on CentOS & RHEL

RubyGems的使用: 回形針(5.1.0) 可卡因(0.5.8)

+0

此答案與另一個非常相似,不會添加任何附加信息 – Guenther

1

here

OLD syntax was :styles => { :medium => "300x300>" } 
New syntax is style: { :medium => "300x300>" } 
相關問題