Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

paperclip accepting jpg and png on production

I'm using PaperClip plugin in my Rails application as follows:

  has_attached_file :photo, :styles => {:small => '64X64>', :medium => '250X250>'},
                                      :url  => "/assets/user_photos/:id/:style/:basename.:extension",
                                      :path => ":rails_root/public/assets/user_photos/:id/:style/:basename.:extension"
#  validates_attachment_presence :photo
  validates_attachment_content_type :photo, :content_type => ['image/jpeg', 'image/png','image/gif']
  validates_attachment_size :photo, :less_than => 1.megabytes

It works fine on development(Mac OSX + Mongrel). But when I put it in production (Linux Debian + Apache/Passenger) it only accepts .gif and I get the following error for .png and .jpg:

 Photo /tmp/stream20091028-20066-1t1a0oz-0 is not recognized by the 'identify' command.
 Photo /tmp/stream20091028-20066-1t1a0oz-0 is not recognized by the 'identify' command.

I tried adding the following line as some tutorials suggests but it didn't help!

Paperclip.options[:command_path] = "/usr/local/bin"
like image 496
Tam Avatar asked Jan 23 '23 01:01

Tam


1 Answers

On your production server, try running:

which identify

This should give you your path to ImageMagick's identify binary -- if it doesn't you don't have ImageMagick installed or it is not in your path.

If it returns something like "/usr/bin/identify", then you'll want to set the Paperclip options in your production.rb environment file to:

Paperclip.options[:command_path] = "/usr/bin"
like image 59
bensie Avatar answered Jan 26 '23 07:01

bensie