使用 rsync 来部署 Hexo 博客
解决了一个不大不小的问题
起因
之前用过 Typecho 、WordPress 搭建博客,都能够很方便的部署在服务器上。之所以换 Hexo,是因为 Typecho 和 WordPress 都用的 PHP,比较吃性能。而我囊中羞涩,用不起高配的服务器,遂转 Hexo。
Hexo 在部署上比较常用的是 git(能够很方便的部署在 GitHub 之类的代码托管平台)
但部署在服务器上,用 git 就会有一些不方便了,毕竟 git 更倾向于代码托管的用途,并不需要那么多的 rollback 备份。
我之前采用的是 sftp,但是 sftp 我在部署博客时有一些问题,表现为推送时卡死。
所以我被迫用了 rsync
hexo-deployer-rsync 项目:https://github.com/hexojs/hexo-deployer-rsync/
用法
安装插件
在博客目录装一下这个插件
1 | npm install hexo-deployer-rsync --save |
如果是 npm 访问较慢,可以使用 cnpm 装(前提是你已经装了 cnpm)。
1 | cnpm install hexo-deployer-rsync --save |
cnpm可以这么装
1 | npm install -g cnpm -registry=https://registry.npmmirror.com/ |
增加部署配置
根据插件的介绍,他的使用方法为在博客源码目录下的 _config.yml
文件中 Deploy 下添加一行
请注意在部署的服务器上添加你的 SSH 公钥,否则部署会出问题
1 | - type: rsync |
最终的效果应该是这样的
多个部署需要在 type
前加上一个 -
,如果只有一个部署可以不加 -
。
题外话
这篇文章是因为今天(5.23)有朋友在问我怎么部署的时候顺带想到的,于是乎就更新了下,顺带把 args
和 rsh
两个参数也加上了,可能之后这玩意再加新参数的话,我还会更新(可能的话)
后记
这篇文章是我今天在给一个朋友聊天的时候突然想到的,这个朋友今天把他的博客转到 Hexo 了,这充分说明轻量才是 yyds(笑)