我在AWS上创建了一个新的S3存储桶。我有一个证书问题,我在原始存储桶上没有相同的代码。
这是代码:
AWS.config(access_key_id: AWS_ACCESS_KEY_ID, secret_access_key:AWS_SECRET_ACCESS_KEY, region: S3_REGION)
s3 = AWS::S3.new
bucket = s3.buckets[S3_BUCKET_NAME]
@resp = bucket.objects.with_prefix('categories/'+@category.id.to_s+"/")
@resp.each do |item|
end
执行"@resp.each"时返回以下错误:
hostname does not match the server certificate (OpenSSL::SSL::SSLError)
- ENV变量已使用新区域和新的存储桶名 进行了更新
- 上传图像正在工作
- @Resp正在返回AWS :: S3 :: ObjectCollection:0x007f815e099d18
- 我的存储桶名不包含点
是否可以在AWS S3上进行配置以避免此错误?
我遇到了同样的问题,我通过:
解决了它。Aws::S3::Client.new(
:access_key_id => 'YOUR_ACCESS_KEY_ID',
:secret_access_key => 'YOUR_SECRET_ACCESS_KEY',
:region => 'YOUR_REGION',
:force_path_style => true)
基本上,还通过指定路径样式。让我知道它是否有效!