提前感谢您的建议!我的客户目前在GoDaddy上有一个实时网站。我正在为他在本地开发一个重新设计的网站。我不喜欢在GoDaddy上工作,并建议他在新网站上线时将新网站迁移到新的网络主机上。我在新的webhost上设置了一个临时站点,这样我们都可以轻松地对其进行修改。新站点是一个全新的实体,有自己的数据库,因此我不会将任何内容从当前活动站点迁移到它。
新站点的域名与原始实时站点的域名相同。当新站点准备就绪时,我会将GoDaddy上的DNS指向新主机。这是我第一次尝试这个,我遇到了一个问题。
也就是说,由于DNS仍然指向GoDaddy,我无法访问或甚至无法登录到临时站点。我原以为在新主机服务器上的子域中安装新站点的阶段版本,然后使用临时URL访问它会奏效,但遗憾的是,我发现它行不通。
新网络主机的技术支持人员对我如何实现这一点感到困惑,但最终想出了在GoDaddy服务器上创建子域,然后将子域DNS指向新网络主机的想法。我不喜欢这个想法,因为我不想冒任何可能中断或破坏当前现场的机会。
我提出了一个我希望是优雅、简单的解决方案,但我想从那些可能已经尝试过并发现它是否有效的人那里获得意见,或者这是一个注定会失败的愚蠢想法。
我在wp配置文件中添加了两行内容,分别是define(\'wp\\u HOME\')和define(\'wp\\u SITEURL\'),并使用了新临时站点的临时URL和目录位置信息。它似乎工作得很好。接下来,当新主机上的新站点准备上线时,我会将DNS指向新主机,并删除wp配置文件中的两行内容。
最后,我想问一个问题:这真的是一个绝妙的解决方案吗?还是真的有可能在将来给我带来诸如断开链接和数据库损坏之类的重大问题?
最合适的回答,由SO网友:Tom J Nowell 整理而成
最后,我想问一个问题:这真的是一个绝妙的解决方案吗?还是真的有可能在将来给我带来诸如断开链接和数据库损坏之类的重大问题?
您会发现创建的新内容引用了新URL,即使删除了config语句,旧内容也可能引用原始URL。
所以是的,它会引起问题。您不能通过向配置文件添加定义来更改站点URL,数据库也需要使用适当的搜索替换工具进行迁移。(SQL查询不是该工具)。
有很多方法可以实现你的目标,但不是这样。