由于 AWS API Gateway 中内置的验证器无法验证自定义域名,需要自行编写 Lambda 函数进行验证。以下是示例代码:
Lambda 函数代码:
def lambda_handler(event, context):
# 自定义域名的验证规则,此处以示例域名 mydomain.com 为例
if 'Host' in event['headers'] and event['headers']['Host'] == 'mydomain.com':
return {
'statusCode': 200,
'body': 'Validation successful!'
}
else:
return {
'statusCode': 400,
'body': 'Invalid domain name!'
}
API Gateway 配置:
创建一个 REST API,并选择“使用自定义域名”。
在“自定义域名”页面中,单击“新建域名”。
在新建域名页面,填写域名、SSL 证书等信息,并勾选“指定执行 AWS Lambda 代理集成”。
在“Lambda 代理集成”页面中,选择已经编写好的 Lambda 函数,并单击“保存”。
在“自定义域名”页面中,单击“部署 API”按钮,部署 API。
完成部署后,访问自定义域名,验证是否可以正常访问 API。