要将S3存储桶重定向到另一个域名,您可以使用AWS S3和Route 53的组合。以下是解决方法的代码示例:
import boto3
s3 = boto3.client('s3')
# 创建存储桶
s3.create_bucket(
    Bucket='your-bucket-name',
    CreateBucketConfiguration={
        'LocationConstraint': 'your-aws-region'
    }
)
# 配置存储桶为静态网站托管
s3.put_bucket_website(
    Bucket='your-bucket-name',
    WebsiteConfiguration={
        'ErrorDocument': {'Key': 'error.html'},
        'IndexDocument': {'Suffix': 'index.html'},
    }
)
route53 = boto3.client('route53')
# 创建一个主域名
route53.change_resource_record_sets(
    HostedZoneId='your-hosted-zone-id',
    ChangeBatch={
        'Changes': [
            {
                'Action': 'CREATE',
                'ResourceRecordSet': {
                    'Name': 'your-domain.com',
                    'Type': 'A',
                    'AliasTarget': {
                        'HostedZoneId': 'your-s3-hosted-zone-id',
                        'DNSName': 'your-bucket-name.s3-website-your-aws-region.amazonaws.com',
                        'EvaluateTargetHealth': False
                    }
                }
            }
        ]
    }
)
确保将your-domain.com替换为您的域名,your-hosted-zone-id替换为您的Route 53托管区域的ID,your-s3-hosted-zone-id替换为您的S3存储桶的托管区域ID,your-bucket-name替换为您的S3存储桶名称,以及your-aws-region替换为您的AWS区域。
这样,当访问your-domain.com时,它将自动重定向到S3存储桶中的静态网站。