如何在 Route53 中将 www 重定向到非 www?

fre*_*ley 27 domain-name-system redirect amazon-route53

我在domain.com.

我在Route53中的DNS条目如下:

domain.com      A       xxx.xxx.xxx.xxx      300
domain.com      NS      stuff.awsdns-47.org  172800
domain.com      SOA     stuff.awsdns-47.org  900
Run Code Online (Sandbox Code Playgroud)

我想从流量重定向www.domain.comdomain.com,因为目前这只是返回404上所以这个问题提出了一个PTR纪录,我补充说:

www.domain.com  PTR     domain.com           300
Run Code Online (Sandbox Code Playgroud)

但它没有用。我该怎么办?

pau*_*ska 25

PTR 用于设置反向 IP 查找,这不是您应该关心的。去掉它。

您需要的是 www 的 CNAME:

www.domain.com  CNAME  domain.com 300
Run Code Online (Sandbox Code Playgroud)

  • 这不是重定向。如果您必须在某种第三方服务中定义回调 URL,则上述解决方案将不起作用。例如 oAuth(Facebook, Twitter) 身份验证。 (18认同)
  • 不,不工作 (2认同)

Har*_*ngh 17

您还可以将 WWW 的 ALIAS 设置为 domain.com 的 A 记录:

www.domain.com A ALIAS domain.com 300
Run Code Online (Sandbox Code Playgroud)

所以你的最终 DNS 条目将如下所示:

domain.com          A       xxx.xxx.xxx.xxx      300
domain.com          NS      stuff.awsdns-47.org  172800
domain.com          SOA     stuff.awsdns-47.org  900
www.domain.com      A       ALIAS domain.com (Hosted Zone ID)
Run Code Online (Sandbox Code Playgroud)


小智 7

我能够通过利用额外的 S3 存储桶进行设置。

我希望我的网站可以通过非 www 访问example.com。在我的情况下,example.com设置了一个 route 53 托管区域、一个 s3 存储桶和一个带有自定义 ssl 证书的 cloudfront 分发。

我想www.example.com重定向到example.com. 为此,我为www.example.com. 我将其设置为public并设置静态网站托管以重定向所有请求。目标存储桶或域是example.com。由于我在 上配置了 ssl 证书example.com,因此我将协议设置为 https。

在此处输入图片说明

在路由 53 中,在 mydomain.com 托管区域内,我创建了一个新的 A 记录,www.example.com并使用指向新 www s3 存储桶网站的别名。

现在所有www.example.com重定向到https://example.com.

希望这可以帮助。

  • 此解决方案适用于 HTTP,但不适用于 HTTPS 请求。您需要使用 CloudFront 来提供 HTTPS 服务。请参阅 https://serverfault.com/a/942537/7005 (3认同)