为什么我的S3 hostname/path 总是翻倍?甚至尝试 path_style: 是的

Why my S3 hostname/path always double? even try path_style: ture

我使用 fog-aws(1.2.0) 和 rails 5.1.1 以及载波 0.9.0。 这是我的问题

Excon::Error::Socket (hostname "assets-xxxx-staging-xxxx-co.assets-lighthouse-staging-xxxx-co.s3-ap-northeast-1.amazonaws.com" does not match the server certificate (OpenSSL::SSL::SSLError)):

我试过了 path_style:是的 错误是SignatureDoesNotMatch,然后我发现路径也不对。

:host          => "assets-xxxx-staging-xxxx-co.s3-ap-northeast-1.amazonaws.com"
  :local_address => "172.104.102.98"
  :local_port    => 42496
  :path          => "/assets-xxxx-staging-xxxx-co/assets-xxxx-staging-xxxx-co/uploads/image/file/677/14138703_1238894682828634_8829163820773300140_o.jpg"
  :port          => 443
  :reason_phrase => "Forbidden"

为什么总是双路径... 到底是怎么回事?我对此一无所知……? 请有人帮忙。

我修好自己!

第一步,我把桶从东京搬到新加坡。

最后一步,我将存储桶名称更改为更短的名称(不要使用句号。)。

正在工作....

虽然我不知道是哪一步起作用的,但我相信第一步的机会更大。

AWS 之前在不同宗教之间存在错误。

如果你也使用 fog-aws gem。主机名确实有可能重复 url 前缀,这个问题 link 可能会有所帮助。

https://github.com/fog/fog-aws/issues/228