我很好奇,是否有可能的方法将一个工作项目从一个托管提供商快速转移到另一个托管提供商(共享托管,Linux+Apache+MySQL),并且使用相同的域名?最简单的方法是停止该项目,让新的托管提供商移动域名,获取相同的但新的托管计划,并从头开始设置一切。
有没有更好的方法(比如注册第二个 IP 地址或类似的东西,这样旧名称就会重定向到新地址,这样用户在移动期间就不会填写任何更改)?有什么可能的方法吗?
PS 用户不是通过ip来了解网站,而是通过域名来了解网站。
答案1
假设您可以控制您的个人 DNS 记录:
如果您没有数据库或正在被网站访问者修改的文件(新用户创建等):
- 与新提供商建立新的托管(仅购买托管,而不是托管加域名 - 确保托管配置为使用您的主域名)
- 将网站 + 数据库复制到新的主机并更改新服务器需要更改的任何设置(网站可能在某些地方使用绝对路径......)
- 测试网站;通常你的托管服务提供商会为你提供一个“临时” URL(即主域名的替代 URL),否则你可以修改计算机上的 hosts 文件,将域名指向新的托管 IP
- 测试成功后,修改 DNS 以将网站指向新的托管服务器(如果您想将域名转移到新的提供商 - 顺便说一句这不是必需的 - 然后将此时的名称服务器更改为新提供商的名称服务器)
- 如果您确实想转移域名,请在几天后启动。名称服务器应该已经指向新的托管服务提供商的服务器。如果您正确操作,此方法应该不会出现停机。
如果您确实有需要保持最新的数据库/文件:
- 按照上述步骤 1-3
- 正如 ampere 所说,在新主机上设置一个子域名,指向与正常 www 相同的文件夹(例如,new.mydomain.com)
- 将子域名添加到您的 DNS
- 等几天
- 在旧主机上设置临时保留页面
- 快速更新新主机上的数据库/任何已更改的文件,其中包含自第 1 点以来发生的任何更改
- 在旧主机上,将保留页面替换为指向 new.mydomain.com 的重定向(该重定向已经传播,指向新服务器)
- 等几天
- 将您的名称服务器更改为新主机(此时您可以摆脱新的子域名,因为每个人都应该使用 www 来访问新主机,或者您可以保留它并设置 301 重定向到 www,如果您担心临时子域名的任何链接/SEO 问题)
- 将域名转移到新主机
这里所涉及的停机时间是您完成第 5 至第 7 点所需的时间。
遗憾的是,这两种方式都需要花费相当多的时间,而您能做什么则取决于托管服务提供商为您提供的服务。有些不会为您提供单独的 DNS 控制,有些不会让您将子域名指向主网站文档根目录等。如果您拥有灵活的托管服务提供商 + 使用单独的域名注册商(因此您也不需要转移域名),那么您可以做更多的事情来减少转移停机时间。
答案2
只需创建一个子域名和根目录中的文件相同。默认情况下域名服务器将自动创建子域名。
现在获取域名的托管帐户并将新的名称服务器更新到您的域名[子域名应该有旧的域名服务器]。
域名服务器通常需要一些时间来传播。在此之前,您可以重定向您的客户子域名具有与您的相同的功能主域。
因此,一旦名称服务器传播之后,您就可以使用新的托管帐户,我的意思是您的主域。