gpt4 book ai didi

amazon-web-services - 当没有找到请求的对象时,从 S3 返回一个默认对象,没有错误

转载 作者:行者123 更新时间:2023-12-03 12:14:57 24 4
gpt4 key购买 nike

当请求的对象未找到/可用时,是否可以配置 S3 存储桶以返回默认对象?我不想返回任何类型的 403 或 404 错误。

最佳答案

[编辑以反射(reflect)以下评论]

在标准模式下,当请求的对象不可用时,无法将 Amazon S3 配置为返回默认对象。

默认行为是当对象不存在时返回 HTTP 403

# existing object
$ curl -I http://s3-eu-west-1.amazonaws.com/public-sst/wifi.jpg
HTTP/1.1 200 OK
x-amz-id-2: K8PxI6YUES0Ua2/rPaLwKhmhZv/lVMbWnvagmfQpzs2BI6NNyHplTB4ROaYvIXCWtE/S+xXIImk=
x-amz-request-id: 9853D002E3968F0D
Date: Mon, 16 Feb 2015 11:08:56 GMT
Last-Modified: Sun, 30 Nov 2014 21:15:06 GMT
ETag: "553353dcf5d98841970e95a6d1af0741"
Accept-Ranges: bytes
Content-Type: image/jpeg
Content-Length: 113572
Server: AmazonS3

# non existing object
$ curl -I http://s3-eu-west-1.amazonaws.com/public-sst/wifi.png
HTTP/1.1 403 Forbidden
x-amz-request-id: F78E2F047DC09F00
x-amz-id-2: wydGOgs8aHMn1qc5MLbNjKGKyqshpBhA0kCgWX0zHUm0fXFRU7Z1eWdPKgtkv2ZVtPPhAqP+O+k=
Content-Type: application/xml
Transfer-Encoding: chunked
Date: Mon, 16 Feb 2015 11:08:59 GMT
Server: AmazonS3

当 Amazon S3 在网站托管模式下配置时(根据 http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html),默认行为是不同的:
  • 当对象不可公开读取时返回 HTTP 403
  • 当对象或存储桶不存在或存储桶未配置为网站时,将返回 HTTP 404。

  • 可以将处于 Web 托管模式的 Amazon S3 配置为返回自定义错误页面,而不是 Amazon S3 生成的默认 HTML HTTP 404 错误。

    由于原始问题还提到 HTTP 403 :没有办法,仅使用 Amazon S3 配置 Amazon S3 以在 HTTP 403 上返回自定义错误页面。详细信息位于 http://docs.aws.amazon.com/AmazonS3/latest/dev/CustomErrorDocSupport.html

    要在 HTTP 403 和 404 上返回自定义错误页面,您可以在 Amazon S3 存储桶前使用 CloudFront。

    http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesErrorPages

    Cloudfront 可以配置为针对 Amazon S3 返回的任何 HTTP 4xx 或 HTTP 5xx 错误返回自定义错误页面。

    CloudFront Distributions 无需额外费用,您只需为来自 CloudFront 的带宽付费。 CloudFront 传出带宽的成本(0.085 美元/Gb)低于 S3 传出带宽(0.09 美元/Gb),因此使用 CloudFront 应该是轻而易举的事。

    关于amazon-web-services - 当没有找到请求的对象时,从 S3 返回一个默认对象,没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28523693/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com