Hexo 与坚果云结合实现无缝同步

​ 这是我第一次使用 Hexo 作为我的博客页面,使用下来还是不错的,尤其是结合坚果云云同步,使得它的使用体验更上一层楼,接下来我就说说如何使用坚果云和 Hexo 结合实现本地页面(无需操作)推送到 ECS。

​ 首先,需要在 Hexo 网站 进行 Hexo 的下载和配置操作,由于有相关的文档和视频讲解,这里不再赘述。

​ 例如使用了 Windows 端,并且 Hexo 新建的文件夹位于 D:\Blog 下。首先打开命令行(推荐使用 Windows Powershell),输入 hexo new "example" ,即在 D:\Blog\source\_posts\ 下新建了一个 example.md 的文档,使用编辑器(推荐使用 Typora)编辑之后保存,然后命令行输入 hexo g 生成,生成之后,所有相关的网页内容(静态网页)都会保存在 D:\Blog\public 目录下,使用任何服务器将目录指向public 文件夹即可实现博客页面的显示。

​ 接下来就是重点,我们将public文件夹添加为坚果云同步目录,如果你已经有一个同步文件夹命名为 public ,你可以在 Hexo 的配置文件 D:\Blog\_config.yml 中修改其 public_dir 的值,换为一个不冲突的名字即可,如图所示。

1544332895659

​ 然后在服务器中将这个目录挂载到本地,Linux 服务器可以使用 davfs2 进行目录挂载(davfs2 的安装和配置参考另一篇文章),例如要将目录挂载到 /home/wwwroot/public ,首先输入

1
vim /etc/fstab

在 vim 中另起一行,输入(可以使用 Tab 或空格进行分隔)

1
https://dav.jianguoyun.com/dav/public	/home/wwwroot/public	ext3	defaults	0	0

保存。建议这一步首先进入坚果云网站,登录之后点击[用户名]→账户信息→安全选项,在第三方应用管理中添加一个应用,将其作为 davfs 的登录密码。

然后输入

1
mount -t davfs https://dav.jianguoyun.com/dav/public

按照要求输入你的坚果云用户名和刚才生成的应用密码,即可在 /home/wwwroot/public 挂载坚果云的 public 目录,这样你在其他任何地方的操作都会被同步到此路径,也就是说你在自己电脑上使用 hexo g 生成之后无需任何操作就会同步到云服务器,接下来只需要配置你的反向代理服务器将目录指向 /home/wwwroot/public 即可。

​ 以后如果需要添加和删除文档,只需要在你本地电脑上生成即可,云服务器会实时显示结果,并且零延迟。

​ 不建议将整个 D:\Blog 文件夹同步到坚果云,因为其中涉及到大量代码文件(数量超过 6000),同步非常耗时,并且安全性不高,同步 public 文件夹是最佳选择。