我有一个托管在S3存储桶中的静态网站和一个在Namecheap注册的域名(例如mydomain.com) 我希望人们使用裸域访问我的网站(即没有子域) 我添加了这样的DNS记录..
Type = CName
Host = @
Value = [URL to S3 bucket]
这有效但现在通过电子邮件发送到该域上的邮箱(例如hello@mydomain.com)不起作用。我读过这是因为如果使用CNAME指定主机的裸规范名称,则不允许该主机拥有任何其他资源记录(例如MX)。
我该如何解决这个问题?我不想求助于添加像www。
这样的子域名答案 0 :(得分:3)
在像这样的区域的顶点有一个CNAME不是一个有效的配置。 DNS提供商甚至不允许您创建它。是的,如果您尝试它会破坏您的MX。
这就是Route 53引入A-record别名的原因。有关说明,请参阅评论中提到的the link。别名记录的行为与人们通常认为CNAME的行为相似,但它们不是CNAME,并且在顶点无效。
要做到这一点,您需要使用Route 53作为权威DNS托管服务提供商。
一种解决方法是在开头创建一个www.
而不是现在的存储桶,创建一个指向它的www CNAME,然后将@
A记录设置为提供的值通过像http://wwwizer.com这样的服务,重定向example.com→www.example.com。
我不隶属于该服务,但我已经看到它用于此目的。