我正在尝试正确设置我的 DNS,以便我可以通过PHPFog和电子邮件服务使用邮件枪。PHPFog 让我们将裸域名重定向到 www,然后使用 CNAME 将 www 指向PHPFog和 mailgun提供要使用的 MX 记录。我遇到的问题是我没有设置 A 记录徘徊因为当我这样做时,CNAME 不再起作用(?),或者至少看起来是这样,因为我不再从 PHPFog 看到我的网站,我看到的是悬停着陆页。我知道我需要的所有记录,但我似乎无法让它们很好地协同工作。有人告诉我亚马逊的 Route 53 应该能够解决我的问题,但我还没有弄清楚如何解决。我只需要在 PHPFog 上托管并通过 MailGun 发送电子邮件服务。
您可能已经看出来了,我对 DNS 的了解非常有限,所以如果这是一个愚蠢的问题,请原谅我。
答案1
您不能将 CNAME 与任何其他“通用”记录混合使用。这是规范。维基百科将告诉您有关CNAME 限制。
你的解决方案可能看起来像:
example.com. MX 10 smtp1.example.com.
example.com. MX 20 smtp2.example.com.
example.com. A 4.3.2.1
www.example.com. CNAME example.com.
smtp1.example.com. A 1.2.3.4
smtp2.example.com. A 5.6.7.8
1.2.3.4
您的邮件传递服务器的 IP 地址在哪里,smtp2
其中的 IP5.6.7.8
是一个假设的备份邮件传递服务器(获取一个,如果您不介意的话,可以删除相关的两行),4.3.2.1
这是您的 Web 服务器的 IP。
答案2
处理 的重定向www.example.com
可以通过简单的记录来完成CNAME
。PHPFog 指示应包括 的正确目标CNAME
。您将无法接收发往www
子域的邮件。
www.example.com. IN CNAME phpfog.example.net
邮件服务器通过记录定位MX
。Mailgun 应该为目标邮件服务器提供名称。我已包含您可能想要包含的 SPF 记录。如果它们提供多个主机名,请添加更多MX
记录。某些服务器不支持 SPF 记录类型,在这种情况下 SPF 将使用该TXT
记录。
example.com. IN MX 10 mailgun.example.net
TXT 'v=spf1 MX -all'
SPF 'v=spf1 MX -all'
您的域名不需要 IP 地址,除非您有一台具有静态地址的服务器,否则不应该有 IP 地址。但是,这意味着您的网站只能使用www
子域名访问。一些(大多数?)浏览器会为不包含名称部分的用户处理此问题www.
。如果您有服务器,它可以运行一个轻量级 Web 服务器,将所有流量重定向到www
子域名。
您还需要域名的 NS 记录,但这些记录应该已经配置好了。