存储桶限制 - Amazon Simple Storage Service

存储桶限制

存储桶归创建它的 AWS 账户所有。存储桶所有权不可转让。

创建存储桶时,您可以选择存储桶名称和要在其中创建存储桶的区域。创建存储桶后,便无法再更改其名称或区域。

为存储桶命名时,您应选择与您或您的企业相关的名称。避免使用与其他人关联的名称。例如,您应避免在存储桶名称中使用 AWS 或 Amazon。

默认情况下,您可以在每个 AWS 账户中创建多达 100 个存储桶。如果您需要更多存储桶,则可以通过提交服务限额提升请求将账户的存储桶限制提高至最多 1,000 个存储桶。无论您使用许多存储桶还是少量存储桶,性能都没有差异。有关如何提升存储桶限制的信息,请参阅 AWS 一般参考 中的 AWS 服务配额

重复使用存储桶名称

如果存储桶为空,您可以将其删除。删除存储桶后,该名称可供重复使用。但是,删除存储桶后,您可能由于各种原因而无法重复使用该名称。例如,当您删除存储桶并且名称变为可供重用时,另一个账户可能会创建具有该名称的存储桶。此外,可能需要一段时间才能重复使用已删除的存储桶的名称。如果您想使用相同的存储桶名称,我们建议您不要删除该存储桶。

对象和存储桶

对存储桶中可存储的项目数没有限制。您可以在单个存储桶中存储所有对象,也可以在多个存储桶中组织它们。但是,您无法从其他存储桶中创建存储桶。

存储桶操作

Amazon S3 的高可用性设计主要关注获取、放置、列出和删除操作。由于存储桶操作针对集中的全球资源空间工作,因此不适合在应用程序的高可用性代码路径上创建或删除存储桶。最好是在单独的初始化或设置不常运行的例程时创建或删除存储桶。

存储桶命名和自动创建的存储桶

如果您的应用程序自动创建了存储桶,请选择不会导致命名冲突的存储桶命名方案。确保存储桶名称已被使用时,您的应用程序逻辑会选择其他存储桶名称。

存储桶命名规则

以下规则适用于为 S3 存储桶命名:

  • 存储桶名称必须介于 3 到 63 个字符之间。

  • 存储桶名称只能由小写字母、数字、句点 (.) 和连字符 (-) 组成。

  • 存储桶名称必须以字母或数字开头和结尾。

  • 存储桶名称不得采用 IP 地址格式(例如,192.168.5.4)。

  • 存储桶名称不能以 xn-- 开头(对于 2020 年 2 月之后创建的存储桶)。

  • 存储桶名称在分区中必须唯一。分区是一组区域。AWS 目前有三个分区:aws(标准区域)、aws-cn(中国区域)和 aws-us-gov(AWS GovCloud [美国] 区域)。

  • 与 Amazon S3 Transfer Acceleration 一起使用的存储桶名称中不能有句点 (.)。有关传输加速的更多信息,请参阅 Amazon S3 Transfer Acceleration

为了获得最佳兼容性,我们建议您避免在存储桶名称中使用句点 (.),但仅用于静态网站托管的存储桶除外。如果您在存储桶名称中包含句点,则无法通过 HTTPS 使用虚拟主机式寻址,除非您执行自己的证书验证。这是因为用于存储桶虚拟托管的安全证书不适用于名称中带有句点的存储桶。

此限制不会影响用于静态网站托管的存储桶,因为静态网站托管只能通过 HTTP 提供。有关虚拟主机式寻址的更多信息,请参阅存储桶的虚拟托管。有关静态网站托管的更多信息,请参阅在 Amazon S3 上托管静态网站

注意

2018 年 3 月 1 日之前,在 美国东部(弗吉尼亚北部) 区域中创建的存储桶的名称最多可包含 255 个字符,并且包括大写字母和下划线。自 2018 年 3 月 1 日起,美国东部(弗吉尼亚北部) 中的新存储桶必须符合在所有其他区域中应用的相同规则。

例 存储桶名称

以下示例存储桶名称是有效的,并遵循建议的命名准则:

  • docexamplebucket

  • log-delivery-march-2020

  • my-hosted-content

以下示例存储桶名称是有效的,但不推荐用于静态网站托管以外的其他用途:

  • docexamplewebsite.com

  • www.docexamplewebsite.com

  • my.example.s3.bucket

以下示例存储桶名称无效

  • doc_example_bucket(包含下划线)

  • DocExampleBucket(包含大写字母)

  • doc-example-bucket-(以连字符结尾)