首页 > 技术 > [原创]wordpress真正无缝无后遗症完全搬家指南

[原创]wordpress真正无缝无后遗症完全搬家指南

wordpress_ex2WordPress搬家实在是一件令人头疼的事,其难度比全新安装要高出好几个级别,即便是使用wordpress一年以上的老鸟也不一定能做好搬家这件看似简单的事情。我经历了6次搬家之后,才真正做到了无缝无后遗症的搬家,在这里整理下步骤。

1. 使用cpanel或是其他面板中的phpMyAdmin导出wordpress的数据库,导出时选上“另存为文件”,其他一切选择默认选项就可以,导出文件通常为localhost.sql

2. 通过面板中的文件管理器,将wordpress所在目录压缩成zip文件,将此文件下载到本地。

3. 打开新主机的面板,创建数据库用户与数据库,记下数据库的名称,比如”abowow_wp”,并为此用户添加访问此数据库的权限。

4. 在本地找个趁手的文本编辑器打开localhost.sql,删掉非注释语句第二行

CREATE DATABASE `AAAAAA` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

修改第三行

USE `AAAAAA`;

将其中的AAAAAA改为第三步中的数据库名称,比如”abowow_wp”,如果旧主机的数据库名称与新主机的相同,则无需修改。

5. 确认新旧主机存放wordpress程序的根目录路径是否相同,比如老主机为”/home/sharkwii/public_html”,新主机是”/home/abowowco/public_html/wordpress”,如果相同则跳过此步,不同的话,在打开localhost.sql的文档编辑器中搜索”public_html”,会找到一条类似于

(59, 0, ‘upload_path’, ‘/home/sharkwii/public_html/wp-content/uploads’, ‘yes’)

这样的语句,请将其中的路径替换。比如,按照上面,应替换为’/home/abowowco/public_html/wordpress/wp-content/uploads’。(注意,这个第五条是人们经常忘记的一点,如果不修改的话,在新主机上通过wordpress后台上传图片等文件时就会报错。)如果你装了Google XML Sitemaps插件,继续搜”public_html”,将另外两条记录也进行替换。

6. 进入新主机面板中的phpMyAdmin,导入localhost.sql文件,注意将字符集选择为UTF-8。

7. 修改第二步下载下来的zip文件中的wp-config.php,将其中的数据库名称与用户替换为新的,如果没变化的话则无需修改。(注意,确保zip中的文件是修改后的。)

8. 将zip文件上传(通过FTP或是面板中的文件管理器都可以),然后在文件管理器中将其解压,调整好根目录所在的位置。

9. 文件管理器中通常是看不到.htaccess文件的,这时可以通过FTP登录旧主机,将.htaccess下载下来,查看有没有与文件路径相关的记录,修改为新的路径,具体操作与第五步类似,然后上传到新主机的wordpress安装目录。(这一点也是经常被忽略的。)

10. 做好以上的步骤,就可以去域名服务商修改DNS服务器或是A记录,指向新的主机。等待新的DNS记录生效。至此,整个搬家过程顺利完成。

给搬家频繁的博友的建议:

1. 尽量不要安装Statpress等需要占用很大数据库存储空间的插件,否则搬家的时候数据库备份导入等操作将变得佷耗时。

2. 如果图片等文件很多的话,不要将其放在主机上,而是放在flickr等第三方相册中,这样减少了搬家时下载上传的时间,也可以节省主机的日常访问流量开销。

P.S. 这里所说的无缝,其实是有点小缝的,从备份数据库到DNS记录生效的时间内(如果采用A记录,通常不到1个小时)的新数据会丢失,不过对于访问量不大的博客来说,不是问题,最多就是差一两条评论的事 :mrgreen:

  1. feicun 十一 14th, 2009 @ 23:21 | #1

    沙发,你搬哪去了?

  2. Shark Chaos 十一 14th, 2009 @ 23:25 | #2

    @feicun
    把cnwave搬到我最早的host2ez永久免费主机上了,才发现那个免费的和我现在这个收费的在一个机房,ip都没差几个号,搞不好都在一台物理机器上!TNND!

  3. A.shun 十一 15th, 2009 @ 02:07 | #3

    无缝无后遗症~。。
    是不是要加个无痛

  4. huangjun 十一 15th, 2009 @ 21:05 | #4

    免费主机和收费的在一个机房?哈哈,太巧了吧~

  5. Shark Chaos 十一 16th, 2009 @ 13:28 | #5

    @A.shun
    你太和谐了…

  6. Shark Chaos 十一 16th, 2009 @ 13:29 | #6

    @huangjun
    那个免费的算是对内测用户的特别照顾,品质和收费的完全一样。但是没想到两个代理用同一家主机。

  7. Showfom 十一 16th, 2009 @ 14:21 | #7

    其实 我想说的是……没那么复杂的。

  8. Shark Chaos 十一 16th, 2009 @ 17:20 | #8

    @Showfom
    我只是想尽量照顾到各种情况…

  9. 七月 十一 17th, 2009 @ 09:50 | #9

    打酱油路过。。。 :roll:

  10. 大狗在线 十二 24th, 2009 @ 23:27 | #10

    我就是因为怕搬家所以一直在忍受天天崩溃的服务器。

  11. Shark Chaos 十二 24th, 2009 @ 23:56 | #11

    @大狗在线
    大胆地搬吧~按我这个教程应该没问题

  12. feicun 十二 29th, 2009 @ 23:18 | #12

    来申请该链接的……

  13. Shark Chaos 十二 29th, 2009 @ 23:30 | #13

    @feicun
    你把最关键的动词打错了…还好我超强纠错…

  14. bolo 一 21st, 2010 @ 16:08 | #14

    最重要的地方就是数据库的转移了

  15. aisinvon 三 11th, 2010 @ 22:06 | #15

    嗯,以后我肯定会遇到

  16. 当代元素 四 7th, 2011 @ 16:55 | #16

    我搬过一次家,没修改数据库文件,只修改了wp-config.php这个文件。
    wp-config.php文件里例如这个名称abowow_wp ,修改成abc_wp 这样,域名没换。反正搬完后貌似没什么问题。一开始也想修改数据库,可是网上查了下都没提到修改,自己也没敢碰,不知道对不对。

  17. Chaos 四 7th, 2011 @ 17:27 | #17

    @当代元素
    如果用着没啥问题就行,有问题再解决问题,:-)

  18. kneats 七 28th, 2011 @ 22:00 | #18

    出问题了。。

    不过我这情况有点复杂,我的网站wordpress数据从A服务器按照此步骤迁到B服务器的 子 域名下。而B服务器的网站域名正是A服务器之前用的,所以现在出现的状况是:打开B服务器的子域名,虽然网站可以打开了,但是点击文章或目录,或登录,都会转向先前的域名路径,而不是现在的子域名路径。。所以说文章还是打不开.wordpress也路径转向,登录不到后台。

    求解! 大侠帮帮忙。,

评论提交中, 请稍候...

留言



注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。
可以使用的标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">
Trackbacks & Pingbacks ( 2 )
  1. 二 19th, 2010 @ 21:43 | #1
    Pingback: 大海个人网站 » Blog Archive » wordpress真正无缝无后遗症完全搬家指南
  2. 十二 18th, 2010 @ 21:48 | #2
    Pingback: WordPress搬家指南 « GoldenShare-分享你我世界!