注:第一篇文讲搬迁博客的原因,第二篇为教程

这里写整个搬家的过程,搬家之前务必先备份数据库,并且在服务器上创建快照!

导出XML数据

借助插件BYETYP以wordpress可识别的MXL格式,导出所有文章和评论数据,以用作wordpress导入。

安装方法和其它插件一样,下载到目录,重命名,启用即可。然后在后台可以看到导出XML文件,点击,下载即可。在新的服务器上正常创立wordpress,然后点击导入,从wordpress导入,安装导入器,运行,选择刚刚下载下来的XML文件。稍等片刻,即可导入完成。

讲道理这一步完成后,所有操作应该完成,但是实则不然,下面开始进行排坑!

排坑

文章开头出现<\!--markdown-->

每篇文章开头出现<\!--markdown-->,这是由于转换后,原先typecho原生支持的markdown语法的申明,我们可以打开数据库管理工具,比如PHPmyadmin,点开网站相对应的数据库,执行SQL语句用于更新数据库,具体语法如下

UPDATE
    `wp_posts`
SET
    post_content =
REPLACE
    (post_content, "<\!--markdown-->", "")
/*其中<\!--markdown-->部分
因为typecho版本不同,可能会有所不同
我们需要根据打开数据表,查看具体内容参考*/

phpmyadmin报错

报错内容 `Warning in ./libraries/config/FormDisplay.php#661
"continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"?

打开phpmyadmin可以看到报错内容,如果内容和上述类似,其原因是低版本的phpmyadmin和PHP7.x不兼容导致,解决错误的方法就是升级phpmyadmin。

注:造成这个搭配的主要原因是之前typecho仅需要低版本的PHP就能运行,所以我们选择安装了低版本的phpmyadmin

宝塔面板搬家问题

如果你使用宝塔面板,不能将同一个域名绑定在两个网站上,所以你需要一个备用的解析设置。且如果仅使用一个服务器,会导致网站根目录名称发生改变。所以,有可能使用两个服务器进行维护。

wordpress搬迁问题

在 5.3–zh_CN 的wordpress中,不知什么原因,搬迁服务器后,导入数据库,重新安装(重构页面),会导致数据库清空。所以,我们需要使用后台的文章导入,别对着数据库疯狂导入了!

SSL证书与CDN

如果你申请了证书,别忘了同时迁移你的证书,如果你使用了CDN,且在两个服务器之间切换时,需要多次更改DNS解析。

同服务器的其它站点

如果你更换了PHP、数据库版本,需要注意新版的PHP和数据库,是否能和同服务器的其它站点匹配。并进行相应修改。注意:还可能会影响到服务器上存在反向代理的网站

伪静态

搬到wordpress别忘了伪静态!不配置会导致部分页面无法访问!如果采用宝塔面板,配置非常方便,点几下就行。

耗时与服务器配置

整个搬家步骤所耗时间较长,我断断续续处理了好几天的时间,建议做好备份系统,需要在时间充裕的情况下进行更改,后续要去处理,wordpress的插件、邮箱、基础设置以及其它配置问题。

由于升级了PHP版本与MySQL,所以我们需要提升服务器配置,内存务必大于1G,否则在稍高负载的情况下会造成服务器卡顿, 同时我们还需要观察PHP以及MySQL的内存占用情况。及时修改相关配置,调整SWAP分区。

PS:MySQL进程在内存一满的情况下,非常容易被Linux清掉,一般都是它先崩,如果你出现了相同问题,别忘了去看日志!


长风破浪会有时,直挂云帆济沧海。在这条路上一直走下去!