相关疑难解决方法(0)

如何为存储桶中不存在的密钥返回404(而不是403)S3桶

我使用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!
Run Code Online (Sandbox Code Playgroud)

注意,"未找到!" 启用S​​3网站托管时,字符串来自桶属性上设置的错误文档.

我也尝试直接使用桶URL访问

HTTP://.s3.amazonaws.com/

除了错误文档而不是错误文档之外,我得到一个XML文档

我该如何解决这个问题?

amazon-s3

44
推荐指数
5
解决办法
3万
查看次数

标签 统计

amazon-s3 ×1