我正在使用 S3 存储一些关键业务文档。我希望存储桶在尝试访问存储桶中不存在的对象时返回 404 状态代码。
但是,我发现它一直在向我返回“403
这是使用 S3 网站 url 的会话示例。
> GET /foobar.txt HTTP/1.1
> User-Agent: curl/7.21.6 (x86_64-pc-linux-gnu) libcurl/7.21.6 OpenSSL/1.0.0e zlib/1.2.3.4 libidn/1.22 librtmp/2.3
> Host: <bucketname>.s3-website-us-east-1.amazonaws.com
> Accept: */*
>
< HTTP/1.1 403 Forbidden
< Last-Modified: Mon, 09 Sep 2013 19:10:28 GMT
< ETag: "14e13b81b3ce5b129d1f206b3e514885"
< x-amz-error-code: AccessDenied
< x-amz-error-message: Access Denied
< x-amz-request-id: <snip>
< x-amz-id-2: <snip>
< Content-Type: text/html
< Content-Length: 11
< Date: Thu, 26 Sep 2013 20:01:45 GMT
< Server: AmazonS3
<
Not found!
请注意,“未找到!” 字符串来自启用 S3 网站托管时在存储桶属性上设置的错误文档。
我也尝试过直接使用存储桶 url 访问
http://.s3.amazonaws.com/
并且返回相同,除了我得到一个 XML 文档而不是错误文档
我该如何解决这个问题?