无法使用 boto3 访问个人 s3 服务器

Can't access personal s3 server with boto3

我有一个私人安装的完全兼容 s3 的服务器。我在那里有一个桶,我可以使用 s3 浏览器检查它。我正在尝试使用 boto3 与服务器交互 python(使用我在 s3 浏览器中使用的相同凭据),但是,对于任何请求,我都会收到 NoSuchBucket 错误。这是我的代码:

s3 = boto3.resource('s3', 
                    endpoint_url=hostname, 
                    use_ssl=False, 
                    aws_access_key_id=access_key, 
                    aws_secret_access_key=secret_key
                    )
for bucket in s3.buckets.all():
    print(bucket.name)

起初我以为凭据有问题,但后来我能够通过 s3 浏览器客户端与服务器进行交互。 所以问题是:我真的不明白错误代码,因为我没有查询任何特定的桶。问题的原因可能是什么?

问题解决了!这是一个 DNS 解析问题。