2016-11-23 4 views
0

Я пытаюсь сделать частный объект на статичном веб-хостинге S3, доступном из подписанного URL. Кажется, достаточно просто, однако использование следующего кода с включенным virtual_host, кажется, всегда приводит к запрету 403. Если я отключу virtual_host, он будет работать так, как ожидалось.Aws :: S3 :: Presigner presigned_url возвращает 403 запрещен с virtual_host

url = Aws::S3::Presigner.new.presigned_url(
    :get_object, 
    :bucket => BUCKET, 
    :key => KEY, 
    :virtual_host => true 
) 

uri = URI.parse(url) 
http = Net::HTTP.new(uri.host, uri.port) 
request = Net::HTTP::Get.new(uri.request_uri) 
resp = http.request(request) 
puts resp.body 

Есть ли недостатки/настройки, которые отсутствуют, чтобы сделать эту работу?

ответ

0

Таковы причины

  1. Access Denied
  2. эмиссионный счет

enter image description here

Смежные вопросы