2016-12-09 4 views
0

私はS3バケットを作成し、boto2経由で静的Webサイトを提供するように設定しています。Boto2を使用して静的なWebサイトをホスティングしているS3バケットを指すR53 ALIASレコードセットを作成する

S3バケット名(例:something.some.com)と同じサブドメイン(something.some.com)を接続するR53 ALIASレコードセットを作成したいとします。

次のコードを書きましたが、エラーが返されます。

changes = boto.route53.record.ResourceRecordSets(R53conn, HostedZone_id) 
change = changes.add_change(
    action="CREATE", 
    name="something.some.com", 
    type="A", 
    alias_hosted_zone_id=HostedZone_id, 
    alias_dns_name='s3-website-us-east-1.amazonaws.com', 
    alias_evaluate_target_health=False 
) 
result = changes.commit() 

と私が手にエラーは、私が理解することはできません

File "F:\Python27\lib\site-packages\boto\route53\connection.py", line 475, in change_rrsets 
    body) 
boto.route53.exception.DNSServerError: DNSServerError: 400 Bad Request 
<?xml version="1.0"?> 
<ErrorResponse xmlns="https://route53.amazonaws.com/doc/2013-04-01/"><Error><Type>Sender</Type><Code>InvalidChangeBatch</Code><Message>Tried to create an alias that targets s3-website-us-east-1.amazonaws.com., type A in zone Z26JTS7LAE8OIN, but the alias target name does not lie within the target zone</Message></Error><RequestId>74e609ed-be51-11e6-99bd-69e41e07a223</RequestId></ErrorResponse> 

です...。私は何が欠けていますか?

答えて

0

私はBoto2で進歩を遂げることができなかったので、私はBoto3で解決しました(はるかに良い)。

Route53_Hosted_Zone_ID = "Z3AQBSTGFYJSTF" #Notice: Fixed ID for us-east-1 
Custom_HZ_id = "use_yours" 

record_set_obj = clientR53.change_resource_record_sets(
    HostedZoneId=Custom_HZ_id, 
    ChangeBatch={ 
     'Changes': [ 
      { 
      'Action': 'CREATE', 
      'ResourceRecordSet': { 
           'Name': client_bucket_name, 
           'Type': 'A', 
           'AliasTarget': { 
               'HostedZoneId': Route53_Hosted_Zone_ID, 
               'DNSName': 's3-website-us-east-1.amazonaws.com', 
               'EvaluateTargetHealth': False 
               }, 
       } 
      }, 
     ] 
    } 
) 

私はそれが誰かを助けることを願っています::]

ここ

コードです

関連する問題