使用回形针将图像上传到s3亚马逊时破坏管道

时间:2011-07-19 17:12:40

标签: ruby-on-rails amazon-s3 paperclip

使用回形针将图像上传到s3亚马逊时出现管道错误

我的模特:

  has_attached_file :avatar, :styles => { :small => "100x100#", :large => "500x500>" },
                    :processors => [:cropper],
                    :storage => :s3,
                    :s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
                    :path => "/:style/:id/:filename",
                    :bucket => "shahbunder"

我的s3.yml:

development:
  bucket: xxx
  access_key_id: xxx
  secret_access_key: xxx
test:
  bucket: xxx
  access_key_id: xxx
  secret_access_key: xxx
production:
  bucket: xxx
  access_key_id: xxx
  secret_access_key: xxx

4 个答案:

答案 0 :(得分:4)

请注意,搜索此错误与ERRCONNRESET之间的错误解决方案的人员 - 响应时间偏差 - 您的服务器时钟未与Amazon正确同步。

答案 1 :(得分:1)

如果使用“/”(例如:“bucket_name /”)键入存储桶名称,则会发生此错误,仅使用名称(例如:“bucket_name”)。

答案 2 :(得分:0)

我认为这通常是因为您的s3凭据错误。但是你可以尝试两种不同的东西:

  1. 脚本/插件安装git://github.com/thoughtbot/paperclip.git(安装paperclip作为插件而不是宝石有帮助了一些)

  2. gem install right_aws right_http_connection(确保你正确地解雇了你的请求)

答案 3 :(得分:0)

尝试使用Fog,我不知道它是否仍未记录或是什么:

示例(符合您的需求):

has_attached_file :media,
  storage:         :fog,
  hash_secret:     Settings.aws.uploader.hash_secret,
  use_timestamp:   Settings.aws.uploader.use_timestamps_in_url,
  fog_credentials: Settings.aws.uploader.fog.to_hash,
  fog_public:      Settings.aws.uploader.public_files,
  fog_directory:   Settings.aws.s3.bucket_cname,
  fog_host:        "http://s.my.com",
  default_url:     "media/system/not_available.mp3",
  hash_data:       ":class/:attachment/:id/:style/:updated_at",
  path:            ":root_path/:id_partition",
  #only_process:
  processors: [:audio_thumbnail],
  styles: { small: ['36x36#', :jpg], medium: ['72x72#', :jpg], large: ['115x115#', :jpg] },
  skip_updated_at: true