我试图用回形针将图片上传到aws s3,但我收到此错误
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
我已经安装了ImageMagick
和rmagick
gem
请帮帮我。
答案 0 :(得分:10)
问题是我的ImageMagick没有JPEG代表。我发现使用了convert -list format
。所以我使用MacPorts重新安装了ImageMagick
,并使用新的ImageMagick路径重新安装了rmagick
。
答案 1 :(得分:7)
我有类似的问题,更新imagemagick解决了这个问题。 您可能也想尝试一下。
答案 2 :(得分:6)
我的Mac上遇到了同样的问题。通过安装GhostScript
解决了这个问题brew install gs
正如回形针文档所述:http://rdoc.info/gems/paperclip/frames/file/README.md
答案 3 :(得分:0)
我遇到了同样的问题,除了重新安装所有内容(ImageMagick,libtool
,ghostscript
,jpeg
),最后还运行了一般brew update && brew upgrade
,我也不得不重新链接freetype
:
brew unlink freetype && brew link freetype
答案 4 :(得分:0)
在我的情况下,我有一个脏的ImageMagick安装(v7.0),我在使用rpm之前手动安装。这个没有向我展示ImageMagick所需的所有依赖项,因此Paperclip在尝试使用转换或识别命令时崩溃了。
我建议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)
答案 5 :(得分:0)
来自here
OLD syntax was :styles => { :medium => "300x300>" }
New syntax is style: { :medium => "300x300>" }
答案 6 :(得分:0)
我有同样的问题,但我删除样式和应用程序开始工作
has_attached_file :picture
validates_attachment_content_type :picture, content_type: /^image\/(png|gif|jpeg|jpg)/
答案 7 :(得分:0)
安装libmagickwand-dev好像要解决它。
sudo apt install ffmpeg
ImageMagick委托视频处理。我失去了超过5个小时,以了解为什么这样的错误NotIdentifiedByImageMagickError
安装make https://www.imagemagick.org/discourse-server/viewtopic.php?t=24284
答案 8 :(得分:0)
我在 Ubuntu 18 服务器上也遇到了同样的问题。
您可以使用以下命令检查与 Imagemagick 一起安装的代理:
convert --version
我在安装后发现了一些缺失的代表,例如 JPEG/JPG 或 PNG。
我清除了 Imagemagick 包,然后使用以下命令安装了 JPEG/JPG 和 PNG 所需的依赖项:
sudo apt-get install build-essential checkinstall libx11-dev libxext-dev zlib1g-dev libpng12-dev libjpeg-dev libfreetype6-dev libxml2-dev
然后尝试安装最新版本的 Imagemagick 并成功。