我正在将Azure DNS用于已迁移到hubspot的网站。我已经从www.mydomain.com创建了一个CNAME记录到hubspot托管的网站。如this document
中所述我希望将Apex域名mydomain.com重定向到hubspot托管网站。但是我没有hubspot IP地址只有CNAME端点。如何在没有IP地址的情况下将mydomain.com重定向到hubspot域。
答案 0 :(得分:1)
您遇到的问题是rules of DNS的问题,该问题禁止存在另一条记录的CNAME记录。裸地址(或Apex)example.com已经有两条记录(SOA和NS),因此不允许使用CNAME。
如果节点上存在CNAME RR,则不应该有其他数据 当下;这可以确保规范名称及其别名的数据 不可能是不同的。此规则还可确保缓存的CNAME可以 使用时不使用权威服务器检查其他RR类型。
要创建Apex记录,例如example.com,您需要使用A记录,这意味着它需要指向Azure网站的IP。完成后,您可以创建从www到example.com的CNAME。 (这是受支持的方法 - 您的Azure网站的IP地址是静态的)
您正在寻找的命令,就像
$rs = New-AzureRmDnsRecordSet -Name "@" -RecordType A `
-ZoneName example.com -ResourceGroupName $RG `
-Ttl $ttl -Force -Overwrite
Add-AzureRmDnsRecordConfig -RecordSet $rs -Ipv4Address $IPAddress
Set-AzureRmDnsRecordSet -RecordSet $rs -Overwrite
然后
$rs = New-AzureRmDnsRecordSet -Name "www" -RecordType "CNAME" `
-ZoneName "something.com" -ResourceGroupName "DNSRecords" `
-Ttl 60 -Overwrite -Force
Add-AzureRmDnsRecordConfig -RecordSet $rs -Cname "example.com"
Set-AzureRmDnsRecordSet -RecordSet $rs -Overwrite
如果您没有IP地址指向您的顶点A记录,那么您唯一的解决方案是使用将为您提供HTTP重定向的IP地址。
我能想到的最简单的方法是创建一个小的Azure Web App并使用该IP地址发送HTTP status 301 Moved Permanently标头。这会对服务器造成微不足道的负担,因为它实际上不会为任何页面提供服务。
另一种方法是切换到提供顶级CNAME的DNS提供商(或至少提供类似功能的解决方法)
在search结束时还有一些HTTP重定向服务(包括免费和付费)(但我从未使用过任何这些服务,所以我无法对质量发表评论!)