我们正在将应用程序从美国服务器迁移到英国服务器;它们基本上是相同的平台(LAMP),版本略有不同,但不足以引起太多问题。
我的问题是:我们每个应用程序都有域名,所有域名都注册到美国主机的名称服务器,并且需要将它们更改为英国主机的域名 - 这很容易更改,但会导致客户端转到任一主机,具体取决于它们与服务器之间的链如何缓存 DNS 记录。
一旦名称服务器发生变化,是否可以让旧服务器(在美国)以某种方式通过 IP 将客户端重定向到新服务器?
我们运行 apache 的方式是使用虚拟主机,因此所有应用程序请求看起来都需要像来自正确的域;我不确定这是否会引起问题。
非常感谢,克里斯
答案1
这只是一次标准的重新授权。一般程序如下:
首先,更改你的当前的名称服务器,以便网站指向新的英国主机。
同时减少域的 TTL。将其设置为 5 秒或更低的值。记下当前的 TTL。
将区域文件从当前名称服务器复制到新名称服务器,并将其设置为为您的 DNS 提供服务。
向您的域名注册商发送重新授权请求,以将您的域名重新授权到新的名称服务器。
此时,您将拥有两个提供相同数据的名称服务器,均将您的网站指向您的英国主机。
在未来的某个时间(至少与更改之前的原始 TTL 一样长),您可以将 TTL 增加回原来的值。
甚至更远的将来,至少是原始 TTL 的 2 到 3 倍,您就可以关闭旧的名称服务器。您只需将此步骤延迟这么长时间,因为网络上有很多损坏的名称服务器,它们会忽略 TTL 并根据需要缓存域记录。
答案2
那么,您有一个美国域名和一个英国域名,对吗?您想让美国域名存在于英国名称服务器中吗?
然后将域名记录从美国服务器复制到英国名称服务器,然后从美国服务器中删除记录并在其上分配转发器。这样应该就可以了。
然后,所有 DNS 请求将通过旧的 DNS 服务器转发到英国服务器。