如何正确地将我的站点从一个域转移到另一个域?

时间:2011-12-02 作者:KallDrexx

我在一个子域上开发了我们的wordpress网站,所以当我用wordpress启动并运行所有内容时,我没有破坏我们的主页(它最初是在Orchard下运行的,我需要更改它)。

WP站点准备好后,我将Wordpress地址的常规设置更改为正确的URL,并复制了所有文件。

不幸的是,这似乎不是真正需要做的全部。今天(非常随机,因为它以前工作得很奇怪),我网站的一部分图像没有显示出来。长话短说,这是因为我所有的WordPress媒体都指向子域上的URL,而不是网站当前运行的核心域。

在数据库中做了更多的研究之后,我可以在数据库中看到对子域的其他引用,例如posts.guid 网站上所有帖子的数据库中的字段。

我必须做些什么才能正确地将所有内容移动到我的核心域,这样当我核化子域时,它不会影响主站点?如果可能的话,我宁愿不必完全重新创建内容(如重新上传图像)。

2 个回复
最合适的回答,由SO网友:ZweiBlumen 整理而成

Wordpress codex上的这两个页面提供了更改URL的良好概述:

http://codex.wordpress.org/Changing_The_Site_URL

http://codex.wordpress.org/Moving_WordPress

然而,长话短说,我总是做以下事情:

备份所有内容将这个方便的小文件复制到站点的根目录:https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

  • 运行它,它会选择您的所有设置,因此您只需输入旧URL作为要搜索的URL,输入新URL作为要替换的URL
  • 完成后,如果需要,您可以将新URL指向该站点,很明显,可以将整个数据库导出到SQL转储文件,并将该文件和所有web文件复制到新位置,我在这个过程中从来没有遇到过任何问题。

    关于searchandreplace2的简短介绍。您在步骤2中下载的php。很多建议是只需使用文本编辑器在SQL转储文件中搜索旧URL并将其替换为新URL。这几乎总是可行的。However it can lead to problems. Wordpress大量使用序列化数组。如果您有一个插件,由于某种原因,它将站点的URL存储在一个序列化的数组中,那么您可能会在文本编辑器中进行简单的搜索和替换,从而破坏该插件。请参阅我链接到的URL以了解有关此的更多信息。

  • SO网友:Jaycbrf4

    我更喜欢使用备份/恢复插件,比如Akeba Backupup和Kickstart。要还原的php。

    它不仅备份站点和数据库,而且在使用kickstart恢复站点时也会备份。php实用程序,它创建数据库并更改URL的所有db条目。

    恢复后,只需登录并重新保存永久链接和菜单。

    整个过程最多需要15分钟-

    结束

    相关推荐

    Admin table list API?

    wp-admin table lists - like post list是否有API或其他东西可以在wp admin中构建表列表?对于表格列表,我的意思是像帖子列表一样。它有列、排序、分页等等。Admin loop - the right way当我创建循环时,我希望它看起来和感觉像核心代码,以正确的方式构建它。No API? Give me an article如果没有这样的API,也许可以给我指一篇关于如何以最好的方式创建它的文章。