AWS Route 53 中的 C 记录(Canonical Name Record)是用来将域名指向另一个域名的。它不支持路径,只能指向另一个域名,因此不能用来指向页面的某个路径。
如果要将域名指向某个路径,可以使用 AWS CloudFront。CloudFront 是一项内容分发网络服务,可以缓存和加速各种静态和动态内容,包括网站、音频、视频等。在 CloudFront 中,可以配置行为来将请求路由到特定的源,也可以将请求路由到其他 AWS 服务。
以下是使用 CloudFront 将域名指向路径的示例代码:
首先,在 CloudFront 中创建一个分配给域名的 Distribution(分发)。
在 Distribution 的 Behaviors(行为)中,配置路由规则。
例如,将请求路由到 Amazon S3 存储桶中的某个路径:
{
"TargetOriginId": "S3-origin-ID",
"ForwardedValues": {
"QueryString": false,
"Cookies": { "Forward": "none" },
"Headers": { "Cookie": String },
"QueryStringCacheKeys": {
"123": true,
"abc": true
}
},
"TrustedSigners": { "Enabled": false, "Quantity": 0 },
"ViewerProtocolPolicy": "allow-all",
"MinTTL": 0,
"PathPattern": "path/to/content/*",
"AllowedMethods": {
"Quantity": 2,
"Items": [
"GET",
"HEAD"
]
},
"SmoothStreaming": false,
"Compress": false,
"LambdaFunctionAssociations": {
"Quantity": 0
}
}
这样,当用户访问该域名时,CloudFront 会将请求路由到指定的路径,同时缓存和加速内容。