Сбой конечной точки AWS S3 Bucket

Я создаю веб-приложение на Rails 5, Ruby 2.4.0 и использую AWS-SDK Gem вместе с Shrine gem.

В настоящее время я получаю это сообщение об ошибке, когда пытаюсь загрузить изображение в свой AWS Bucket.

Я подтвердил свой регион здесь: http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region

введите здесь описание изображения

Мой файл shrine.rb:

 require "shrine"
require "shrine/storage/s3"
require "image_processing/mini_magick"

s3_options = {
    :access_key_id =>       ENV["AWS_ACCESS_KEY_ID"],
    :secret_access_key =>   ENV["AWS_SECRET_KEY"],
    :region =>              'ca-central-1',
    :bucket =>              ENV["AWS_BUCKET"],
}

Shrine.storages = {
    cache: Shrine::Storage::S3.new(prefix: "cache", **s3_options),
    store: Shrine::Storage::S3.new(prefix: "store", **s3_options),
}

Я жестко запрограммировал этот регион, чтобы узнать, не проблема ли это в моем ENV. но я получаю те же результаты.

Я застрял в том, как поступить с этим, поскольку каждый раз, когда я пытаюсь установить конечную точку для своего региона, святыня кричит и говорит, что это недопустимая конфигурация.

Любая помощь здесь будет принята с благодарностью!


person Shawn Wilson    schedule 19.05.2017    source источник
comment
sitefinity.com/developer-network/forums/set-up-installation/   -  person Adiii    schedule 19.05.2017
comment
stackoverflow.com/questions/25027462/   -  person Adiii    schedule 19.05.2017
comment
Вернитесь в консоль AWS и убедитесь, что вы действительно создали корзину в ca-central-1.   -  person Michael - sqlbot    schedule 19.05.2017


Ответы (2)


Об этой проблеме сообщалось в святыне № 163, и проблема, похоже, решена. с указанием :endpoint:

require "shrine"
require "shrine/storage/s3"
require "image_processing/mini_magick"

s3_options = {
  :access_key_id =>       ENV["AWS_ACCESS_KEY_ID"],
  :secret_access_key =>   ENV["AWS_SECRET_KEY"],
  :region =>              'ca-central-1',
  :bucket =>              ENV["AWS_BUCKET"],
  :endpoint =>            ENV["AWS_ENDPOINT"] # <=======
}

Shrine.storages = {
  cache: Shrine::Storage::S3.new(prefix: "cache", **s3_options),
  store: Shrine::Storage::S3.new(prefix: "store", **s3_options),
}
person janko-m    schedule 21.05.2017
comment
Спасибо за ответ, я открыл проблему на github, но нашел решение в 163, я забыл закрыть этот вопрос. - person Shawn Wilson; 21.05.2017

Добавьте еще один параметр:

:s3_host_name => s3.ca-central-1.amazonaws.com
person Yeshodhan Kulkarni    schedule 19.05.2017
comment
драгоценный камень святыни не допускает другого параметра, он вылетел .. Я использую скрепку, но все еще имеет ту же проблему - person Shawn Wilson; 19.05.2017