前言
完成了博客的搭建并云端化之后,另一个担忧出现了:在腾讯云购买的便宜服务器只有一年时间,到期之后,如果更换到其他服务器,那么原本的博客内容如何完美迁移过去。
经过了解,可以使用hexo-git-backup插件实现博客备份。
本文所用环境:
腾讯云服务器
Github
博客备份
创建备份仓库
在Github上新建仓库(如:hexo-backup),权限设置为private
修改配置文件
在hexo配置文件(_config.yml
)中添加以下内容:
1 | backup: |
例如:
⚠️2020 年 10 月 1 日之后,Github新创建仓库默认分支为main,因此branchName
属性按个人实际情况填写。
安装插件
1 | npm install hexo-git-backup --save |
备份
运行hexo backup
或hexo b
即可备份博客文件夹下内容
1 | hexo b |
推送到Github仓库的内容如下:
博客恢复
环境配置
在新电脑/服务器上配置Git、NodeJs,具体步骤可以参考Windows下hexo+Github个人博客搭建、Hexo完全部署到腾讯云两篇,分别介绍了Windows及CentOS环境下hexo的配置。
生成SSH秘钥并添加到Github
在新环境下运行Git命令:
1 | git config --global user.name "yourname" |
生成秘钥并保存在本地:
找到id_rsa.pub
文件并复制其中全部内容。
打开Github,在头像下面点击Settings
,再点击SSH and GPG keys
,新建一个SSH key
,名字随便取一个都可以,把刚刚复制id_rsa.pub
的内容粘贴进去并保存。
运行命令ssh -T git@github.com
,出现用户名,则配置成功。
下载备份文件到本地
- 使用git clone命令将备份仓库下载到本地,相当于创建了博客本地文件夹
- 将下载的文件夹改名并移动至固定位置*(非必要步骤)*
- 在博客文件夹下执行命令
npm install hexo-cli -g
安装hexo插件 - 执行命令
npm install
自动安装依赖文件*(如butterf主题的依赖、Gulp插件等,若未自动安装成功,手动安装即可)* - 执行命令
npm install hexo-deployer-git --save
安装部署插件
在新环境上运行博客
Windows上运行hexo cl && hexo g && hexo s
,打开本地路径localhost:4000
检查是否成功,调整完毕后即可像之前一样正常使用;
云服务器上先要对环境及配置文件进行修改(主要修改ip地址、文件目录等路径),之后运行hexo cl && hexo g && hexo d
,使用浏览器打开服务器地址查看是否成功。
后记
在使用过程中会出现Github无法连接的问题,也可以考虑使用码云-gitee进行文件备份(服务器在国内而且使用方法与Github类似),具体的可以自行搜索尝试。