将域指向没有域作为存储桶名称的 S3 存储桶的最佳方法是什么

What is the best way to point domain to a S3 bucket that doesnt have the domain as bucket name

我是 AWS 及其所有服务的新手,我的第一次尝试是使用 AWS Vue CLI 默认创建的 S3 存储桶开始我的项目。我已将 Cognito 池和网关 API 连接到此存储桶,但现在我想将此项目连接到我刚购买的自定义域,我意识到存储桶名称需要与根域名匹配。据我了解,这意味着我需要从我的 Vue 项目中提取所有非 aws 文件,复制它,然后重新配置预先存在的连接或重新开始。

我已经为我的自定义域设置了一个空的 S3 存储桶、Cloudfront 和路由器 53,这样就可以正常工作了,但现在我不确定如何从存储桶中转移这个项目。

所以基本上我从 Bucket1 开始了我的项目,并完成了包括 Cognito 池和网关在内的所有内容 API。现在我有一个自定义域,我想使用 Cloudfront 和 Route 53 以及 CustomDomain 存储桶名称,我想从 Bucket1 加载项目以用于新存储桶。

执行此操作的典型 AWS 方法是使用 cloudfront - 域指向 cloudfront,cloudfront 可以指向任何存储桶名称或其他源位置;当您将 cloudfront 引入组合时,bucketname 不再需要匹配域名。

使用 Cloud-front 可以缓解这个问题。

Route 53(DNS 名称)--> Cloudfront Url --> S3 来源

由于您已经为网站托管创建了存储桶,以下步骤可以帮助您。

  1. 使用 Amazon S3 console t 登录并搜索 CloudFront。
  2. 点击创建分配

  1. 创建 Web 分发

  1. Select 源域名中已有存储桶并完成设置。

  1. 更新您域的 DNS 记录,将您网站的 CNAME 指向您的 CloudFront 分配的域名。您可以在 CloudFront 控制台中找到您的分配域名,其格式类似于 d1234abcd.cloudfront.net.

  2. 等待您的 DNS 更改传播并等待之前的 DNS 条目过期。