2

假设我目前在专用服务器上有网站 www.a.com(完全静态),我想切换到 AWS。

到目前为止,我做了以下工作:创建存储桶 www.a.com,授予适当的权限以使其成为网络(对公众可见)并上传所有文件。获取http://www.a.com.s3-website-eu-west-1.amazonaws.com

我在 AWS Route 53 中创建了托管区域,并自动获得了两个记录集,NS 和 SOA。接下来,我为 *.a.com 添加了一个 CNAME。价值http://www.a.com.s3-website-eu-west-1.amazonaws.com

现在的问题是,我要为 A 记录添加什么?我没有IP。(由于没有 A 记录,www.a.com 有效,但 a.com 无效)。

我可以以某种方式使用我的专用服务器来继续提供电子邮件吗?鉴于我有 WHM/cPanel 服务器,我应该如何设置 MX?

谢谢。

4

2 回答 2

6

首先,我建议添加一个名为 a.com 的额外存储桶并解决此问题,但不要删除 www.a.com,稍后您将向其中添加一个 CNAME,以便 www.a.com 重定向到 a.com在浏览器中。

现在您已经创建了 a.com 存储桶,请转到属性 > 静态网站托管 > 启用网站托管 > 输入 index.html 并将具有该名称的文件上传到您的存储桶。

然后去属性>权限>编辑桶策略>粘贴下面的代码:

{
  "Version":"2008-10-17",
  "Statement":[{
    "Sid":"PublicReadForGetBucketObjects",
        "Effect":"Allow",
      "Principal": {
            "AWS": "*"
         },
      "Action":["s3:GetObject"],
      "Resource":["arn:aws:s3:::example-bucket/*"
      ]
    }
  ]
}

将 {example-bucket} 更改为 {a.com} 并保存。

现在转到 Route53 > 选择您的域 > 转到记录集 > 创建记录集

确保“类型”设置为“A”,然后选择“别名”旁边的“是”。单击 Alias Target 区域,在 S3 网站下,您现在应该会看到 a.com。选择它,然后在底部选择“创建记录集”。

你完成了。

于 2013-03-27T15:08:06.700 回答
-1

这是在 S3 上托管静态站点时经常遇到的限制。你有几个选择。

  • 使用或类似工具确定您的 S3 存储桶使用的 IP 地址dignslookup这会奏效,但随着亚马逊围绕他们的 IP 进行洗牌,它最终可能会失败。
  • 使用提供“裸重定向”服务的 Route53 以外的 DNS 提供商。当有人访问您的根目录时,DNS 提供商将执行 HTTP 301 重定向到您的“www”记录。
  • 在您自己的服务器/EC2 实例上托管一个非常简单的网站,该网站发出相同的 HTTP 301 重定向。

编辑:截至 2012 年 12 月 27 日,S3 现在支持在没有上述所有解决方法的情况下执行此操作的方法。查看有关从 S3 托管根网站的 AWS 博客。

于 2012-07-30T00:16:57.103 回答