Ruby on rails URI::InvalidURIError:Carrierwave s3
我正试图通过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
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
你弄明白了吗?我也犯了同样的错误