AWS Cli 与非 DNS 兼容存储桶同步

rlc*_*ral 4 amazon-s3 amazon-web-services botocore

有什么方法可以使用 AWS 命令​​行将本地文件夹与包含句点“.”的存储桶同步?

如果我这样做:

aws s3 sync local_folder/ s3://files.domain.com/backup
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

致命错误:名为 files.domain.com 的存储桶与 DNS 不兼容。不能使用虚拟托管式寻址。可以通过在 AWS Config 文件或 botocore.client.Config 对象中删除addressing_style 值或将该值设置为“path”或“auto”来配置寻址样式。

我已经尝试删除或更改addressing_styleAWS 配置中的值,但没有奏效。我不知道如何在 botocore 上进行更改。

AWS 配置

[default]
output = json
region = us-west-1
s3 =
  max_concurrent_requests = 100
  max_queue_size = 10000
  multipart_threshold = 64MB
  multipart_chunksize = 16MB
  use_accelerate_endpoint = true
Run Code Online (Sandbox Code Playgroud)

rlc*_*ral 5

看来我发现了问题。

use_accelerate_endpoint = true
Run Code Online (Sandbox Code Playgroud)

名称中带有句点 (.) 的存储桶不支持传输加速:Amazon S3 Transfer Acceleration

这意味着use_accelerate_endpoint必须删除或设置为 false。否则,它将无法工作并抛出该错误,使您认为它可以使用正确的设置工作,而实际上您需要删除该标志。