Halo博客迁移记录

Yunxiao 2020年11月25日 765次浏览

原来购买的腾讯云服务器到期了,我也不打算续费那个带宽1M的的机器了,刚好腾讯云又出了新的学生机,配置还是2核1G,带宽变成5M了,一个月1000G的流量。而且还比原来的便宜一点,果断准备迁移。

备份数据

迁移前肯定是要备份博客原来的数据的。Halo博客提供了全站导出功能,可以直接导出整站的数据。也就是.halo文件,
#迁移工作
按照官方的文档应该是把备份的.halo文件上传后即可按照正常流程安装,但是我试了几次用我的.halo文件启动都会报错。而先正常启动halo博客的Jar包让它自动生成.halo文件然后替换里面的数据就可以。非常奇怪,我也没找到原因。
也就是说,我的迁移流程就是:
先正常安装,生成.halo文件
然后替换.halo文件里面的db,templates,upload这三个文件夹即可,其实除Logs文件夹外都可以替换,但我的static文件是空的也就没有替换的必要了。
然后正常启动就不会报错了。
但是此时只能通过公网Ip访问后台,因为之前的配置文件是配制了域名的。需要先进入后台把博客地址改成http://ip:端口号 才能访问博客主页(其实后面还是要换回来的,所以也可以不慌换,直接进行后面的工作)

配置域名,https证书

这里也没什么说的,按照halo官网文档配置nginx和cerbot自动续约证书即可。

一些其他配置

如果你上面修改了博客地址,配置域名是要换回来的。还有就是如果有些图片地址失效了,需要去看看资源库里面的地址和文章里面的地址是不是不对应了,改成一样就能正常显示了。

总结

本来很简单的一个迁移工作,因为按照官网的方法不能正常启动Jar包折腾了好久,而且后面也想探明原因又花费了一些时间。。。 回头有空了看看github上有没有类似的issue。

补充

在github上咨询作者后发现自己犯了一个小错误导致前面绕了弯路,我上传.halo文件到服务器时使用的root用户,而部署的时候是非root用户,导致权限不够。其实错误信息也写的很清楚,自己没仔细分析。
不得不说,作者的回复速度很快,赞一个