Ruby on rails URI::InvalidURIError:Carrierwave s3

Ruby on rails URI::InvalidURIError:Carrierwave s3,ruby-on-rails,amazon-s3,carrierwave,Ruby On Rails,Amazon S3,Carrierwave,我正试图通过carrierwave将文件上载到S3,但得到一个URI::InvalidURIError错误 奇怪的是我在日志中看到了迷雾:随后重定向到MYBUCKETNAME.s3-eu-west-1.amazonaws.com。这个命名似乎是错误的。我是否在下面输入了错误的配置变量 下面两行我也看到了 Excon::Errors::SocketError(主机名“MYBUCKETNAME.MYBUCKETNAME.s3-us-west-1.amazonaws.com”与服务器证书(OpenSS

我正试图通过carrierwave将文件上载到S3,但得到一个
URI::InvalidURIError
错误

奇怪的是我在日志中看到了迷雾:随后重定向到
MYBUCKETNAME.s3-eu-west-1.amazonaws.com
。这个命名似乎是错误的。我是否在下面输入了错误的配置变量

下面两行我也看到了

Excon::Errors::SocketError(主机名
“MYBUCKETNAME.MYBUCKETNAME.s3-us-west-1.amazonaws.com”
与服务器证书(OpenSSL::SSL::SSLError)不匹配):

carrierwave.rb

unless ENV['AWS_ACCESS_KEY_ID'].blank?

CarrierWave.configure do |config|
config.root = Rails.root.join('tmp') # adding these...
config.cache_dir = 'carrierwave' # ...two lines

config.fog_credentials = {
  provider:              'AWS',                        # required
  aws_access_key_id:     ENV['AWS_ACCESS_KEY_ID'],                        # required
  aws_secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'],                        # required
  region:                'eu-west-1',                  # optional, defaults to 'us-east-1'
  }
  config.fog_directory  = ENV['AWS_BUCKET_NAME']                          # required
  config.cache_dir = "#{Rails.root}/tmp/uploads"


#for fog
config.fog_public = false
 end
end

我也遇到了同样的问题,通过在config/carrierwave.rb文件中添加以下内容,我能够解决这个问题:

CarrierWave.configure do |config|
  config.storage = :fog
end

你弄明白了吗?我也犯了同样的错误