存储分区和对象命名准则

本页面概述了在 Cloud Storage 中创建存储分区和上传对象时应遵循的命名准则。要了解如何创建存储分区,请参阅存储分区创建指南

存储分区名称要求

您的存储分区名称必须符合以下要求:

  • 存储分区名称只能包含小写字母、数字、短划线 (-)、下划线 (_) 和句点 (.)。含有点的名称必须进行验证
  • 存储分区名称的开头和结尾都必须是数字或字母。
  • 存储分区名称必须包含 3 到 63 个字符。含点的名称最多可以包含 222 个字符,但是每个以圆点分隔的部分不得超过 63 个字符。
  • 存储分区名称不得以点分十进制的 IP 地址表示(例如 192.168.5.4)。
  • 存储分区不得以“goog”前缀开头。
  • 存储分区名称不得包含 "google" 或 "google" 的近似错拼变体(如 "g00gle")。

此外,为保证 DNS 合规与未来的兼容性,不应使用下划线 (_),也不应在句点或短划线旁边再添加句点。例如,DNS 名称中不可以使用“..”、“-.”或“.-”。

存储分区名称注意事项

所有存储分区名称都保存在一个 Cloud Storage 命名空间中,这意味着,每个存储分区名称都必须独一无二。如果您尝试创建的存储分区名称已被分配给现有的存储分区,则 Cloud Storage 会回复一则错误消息。但是,在删除某个存储分区后,其名称可供您或其他用户在创建新的存储分区时再次使用。

您只能在创建期间分配存储分区名称:您无法更改现有存储分区的名称。而是应创建一个具有所需名称的新存储分区,并将内容从旧存储分区移到新存储分区中。要查看分步指南,请参阅移动和重命名存储分区

另请参阅与命名有关的最佳做法部分,其中提供了实用的建议,可帮助您了解如何从存储分区和对象名称中排除专有信息。

对象名称要求

您的对象名称必须符合以下要求:

  • 对象名称可以包含任何有效 Unicode 字符序列(采用 UTF-8 编码时,长度为 1-1024 字节)。
  • 对象名称不能包含回车符或换行符。
  • 对象名称不能以 .well-known/acme-challenge 开头。
  • 无法将对象命名为 ...

如需详细了解回车符和换行符,请参阅换行符

强烈建议您在对象名称中避免包含以下内容:

  • 避免使用 XML 1.0 中的非法控制字符(#x7F–#x84 和 #x86–#x9F):当您尝试列出对象时,这些字符将导致 XML 列出功能出现问题。
  • 避免在对象名称中使用“#”:gsutil 会将使用 #<numeric string> 作为结尾的对象名称解析为版本标识符,因此,如果在对象名称中包含“#”,您将难以或无法使用 gsutil 对此类版本化对象执行操作(请参阅对象版本控制和并发控制)。
  • 避免在对象名称中使用“[”、“]”、“*”或“?”:gsutil 将这些字符解读为通配符,因此对象名称中含有它们会很难或无法使用 gsutil 执行通配符操作

对象名称注意事项

所有对象名称都保存在一个存储分区内的平面命名空间中,这意味着,不同的存储分区可以包含具有相同名称的对象。这还意味着,对象并未保存在存储分区内的子目录中。例如,您可以将一个对象命名为 /europe/france/paris.jpg,使看起来 paris.jpg 位于子目录 /europe/france 中,但对于 Cloud Storage 而言,该对象只是位于存储分区中,且其名称为 /europe/france/paris.jpg

与存储分区一样,您无法重命名现有对象。您应当换一种做法,即复制对象,为新对象提供所需名称,然后删除旧对象,从而有效地实现重命名操作。您可以通过 gsutil mv 命令轻松完成此操作(该命令会自动处理此过程)。对于文件(而非文件夹),您也可以通过 Google Cloud Platform Console 轻松执行重命名操作,方法是点击所需文件的下拉菜单(显示为文件所在行最右侧的三个竖点)并点击移动/重命名。通过 JSON 和 XML API 使用 Google Cloud Storage 时,您需要明确执行对象重命名操作,方法是复制对象,然后删除对象。

后续步骤

此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Cloud Storage
需要帮助?请访问我们的支持页面