HiveBrain v1.2.0
Get Started
← Back to all entries
patternrubyrailsCritical

AWS S3: The bucket you are attempting to access must be addressed using the specified endpoint

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
awsyouaccessattemptingaremustaddressedspecifiedtheusing

Problem

I am trying to delete uploaded image files with the AWS-SDK-Core Ruby Gem.

I have the following code:

require 'aws-sdk-core'

def pull_picture(picture)
    Aws.config = {
        :access_key_id => ENV["AWS_ACCESS_KEY_ID"],
        :secret_access_key => ENV["AWS_SECRET_ACCESS_KEY"],
        :region => 'us-west-2'
    }

    s3 = Aws::S3::Client.new

    test = s3.get_object(
        :bucket => ENV["AWS_S3_BUCKET"],
        :key => picture.image_url.split('/')[-2],   
    )
end


However, I am getting the following error:


The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.

I know the region is correct because if I change it to us-east-1, the following error shows up:


The specified key does not exist.

What am I doing wrong here?

Solution

It seems likely that this bucket was created in a different region, IE not us-west-2. That's the only time I've seen "The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint."


US Standard is us-east-1

Context

Stack Overflow Q#25027462, score: 563

Revisions (0)

No revisions yet.