Jas*_*per 12 domain-name-system amazon-s3 amazon-route53
我正在托管一个静态网站,使用 Amazon Route53 作为 DNS 和 S3 作为 html 文件。它工作正常。
当前设置是:
example.com. A ALIAS s3-website-us-east-1.amazonaws.com.
www.example.com. CNAME www.example.com.s3-website-us-east-1.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
(注意:example.com 和 www.example.com 是 S3 存储桶。我的 HTML 文件驻留在 example.com 存储桶中。)
现在我想添加一个像这样的通配符子域 - 这是我尝试过的:
*.example.com. CNAME www.example.com.s3-website-us-east-1.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
这个想法是让anything.example.com 正确解析到网站。但这似乎不起作用。因此,当我访问网站时:joker.example.com 我在浏览器上看到错误消息:
Code: NoSuchBucket
Message: The specified bucket does not exist
BucketName: joker.example.com
Run Code Online (Sandbox Code Playgroud)
小智 10
@edvinas.me 的答案是正确的。您必须为您的存储桶创建一个 Cloudfront 分配。
创建 cloudfront 分配时,将备用域名选项设置为 *.example.com。
然后使用像 d3lt3rsz2leycm.cloudfront.net 这样的 cloudfront 网址。
现在您可以像这样添加通配符子域:
*.example.com. CNAME 3lt3rsz2leycm.cloudfront.net.
Run Code Online (Sandbox Code Playgroud)
并且应该工作。
您的 S3 存储桶配置为仅接受 example.com(和/或 www.example.com)的请求。您无法将存储桶配置为接受您想要激活的任何特定子域。
完成此操作的唯一方法是使用 Cloudfront http://aws.amazon.com/cloudfront/等外部服务来代理请求。
Michael (sqlbot) 的回复似乎更详细地介绍了这一点。
归档时间: |
|
查看次数: |
19381 次 |
最近记录: |