我正在尝试使用以下URL访问位于us-east-1
地域的公共存储桶资源,原因如下:
https://s3-us-east-1.amazonaws.com/demo.terraform.bucket/VideoImages/public.png
当我尝试在浏览器中执行上面的URL时,我得到了这个错误:
s3-us-east-1.amazonaws.com’s server IP address could not be found.
但是,如果我使用下面的URL,它可以工作,并且我会得到资源:
https://s3.amazonaws.com/demo.terraform.bucket/VideoImages/public.png
我有另一个公共存储桶,它是由我的团队中的其他人在不同地区的us-west-2
中创建的,我可以使用https://s3-us-west-2.amazonaws.com/<bucketname>/VideoImages/public.png
格式访问它。
我正在尝试弄清楚我的存储桶demo.terraform.bucket
的访问是怎么回事。为什么我不能使用该语法https://s3-<region>.amazonaws.com/<bucket name>/VideoImages/public.png
访问图像
存储桶策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowPublicReadVideoImages",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::demo.terraform.bucket/VideoImages/*"
},
{
"Sid": "AllowPublicReadMarketing",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::demo.terraform.bucket/MarketingResources/*"
}
]
}
我将Block all public access
设置为Off
发布于 2020-11-05 21:29:32
对于A/AAAA查询,s3-us-east-1.amazonaws.com
返回NXDOMAIN
,即它不存在。s3-<region>.amazonaws.com
格式的域是遗留的,仅存在于通常具有非标准名称的选定区域。您不应该再使用它们。
S3域的现代格式是s3.dualstack..amazonaws.com/
。坚持这一点,不要忘记支持IPv6的dualstack
位。
https://stackoverflow.com/questions/64697278
复制相似问题