我应该将Amazon S3存储桶放在哪个区域?

时间:2019-06-08 07:25:13

标签: ruby-on-rails amazon-web-services amazon-s3

我有一个来自地区europe的heroku应用

由于亚马逊s3存储桶上的same origin政策,我无法在Rails应用程序(RoR 6)中以表格形式上传图片。该存储桶位于eu-west-1(都柏林-我以为heroku也在这里)

由于我的域名是法语,我应该把它放在法国eu-west-3上吗?

这是我的CORS文件:

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>https://www.cremers.fr/adm/auteur/2/article/nouveau</AllowedOrigin>
    <AllowedOrigin>https://www.cremers.fr/</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>POST</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>

2 个答案:

答案 0 :(得分:2)

您可以使用任何区域。

与域无关。

您至少可以使用us-east-2us-west-1。没关系。

唯一可能影响此的是下载速度。如果用户在法国,那么从加拿大服务器下载的时间要比从欧洲服务器下载的时间长一点。

但这可以忽略不计。

答案 1 :(得分:1)

根据AWS

  

Amazon S3存储桶名称在全球范围内是唯一的,名称空间由所有AWS账户共享。这意味着创建存储桶之后,该存储桶的名称将无法被任何AWS区域中的另一个AWS账户使用,直到删除该存储桶为止。您不应出于可用性或安全性验证的目的而依赖特定的存储桶命名约定。

     

Amazon S3在您指定的区域中创建存储桶。为了优化延迟,最大程度地降低成本或满足法规要求,请选择地理位置最接近您的任何AWS区域。例如,如果您居住在欧洲,则可能会发现在欧盟(爱尔兰)或欧盟(法兰克福)地区创建存储桶是有利的。有关Amazon S3区域的列表,请参阅AWS General Reference中的区域和端点。

因此,选择S3存储桶区域取决于您的应用程序使用情况和区域