为什么我无法使用carrierwave和fog-aws将大于1MB的文件上传到S3?

时间:2016-12-24 14:43:25

标签: ruby-on-rails file-upload amazon-s3 carrierwave fog-aws

我已经使用carrierwave,S3和fog-aws为我的rails应用程序实现了文件上传。无论文件大小如何,它都适用于我的本地开发环境。但是,当部署到AWS时,文件上传< 1MB成功,任何事情> 1MB导致Chrome中出现ERR_CONNECTION_RESET并且'连接已重置'在Firefox中。

以下是我使用的宝石。

gem 'carrierwave', '~> 1.0'
gem 'fog-aws', '~> 1.1'

以下是我的carrierwave.rb

CarrierWave.configure do |config|
  config.fog_provider = 'fog/aws'
  config.fog_credentials = {
      provider: "AWS",
      aws_access_key_id: ENV["S3_KEY"],
      aws_secret_access_key: ENV["S3_SECRET"],
      region: ENV["S3_REGION"]
    }
  config.fog_directory = ENV["S3_BUCKET"]
end

以下是我的上传者。

class AttachmentUploader < CarrierWave::Uploader::Base
  storage :fog

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end
end

0 个答案:

没有答案