您尝试访问的存储区必须使用指定的端点进行寻址

时间:2016-06-11 11:22:39

标签: ruby-on-rails paperclip

我在最新的rails(4.2.6)项目中使用了paperclip 5.0.0.beta2。该应用程序托管在Heroku上。我可以上传图像,它似乎存储在Amazon S3上的存储桶中。但是在浏览器中,图像似乎有一个损坏的URL,虽然它指向Amazon S3上的存储桶,但网址是:

http://s3.amazonaws.com/gigbnb/profiles/profile_pics/000/000/002/small/anthony_candaele-300x300.jpg?1464956858

当我在浏览器中输入此URL时,我会收到一个包含此错误消息的xml页面:

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

看起来S3端点存在问题。

但是我在配置文件中设置了区域(eu-west-1):

config/environments/production.rb


config.paperclip_defaults = {
   storage: :s3,
   s3_region: ENV.fetch('AWS_REGION'),
   s3_credentials: {
     bucket: ENV.fetch('S3_BUCKET_NAME'),
     access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
     secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
   }
}

我的Github存储库位于:

https://github.com/acandael/gigbnb

有没有人知道发生了什么?

感谢您的帮助,

安东尼

1 个答案:

答案 0 :(得分:2)

这是workaround,为我解决了这个问题。它是由aminariana提出的