目录

如何在家庭路由器上搭博客(三)


目录

此文章是17年中完成的,此方法已经不可用,但文章仍有一部分参考意义,如果想深究,请移步到新文章开发完成了网站的自动同步功能,写一些建站的那些小事

/how_to_build_blog3/bkgbmp.png

前面两篇已经可以完整的运行一个博客系统了,但是,在没有同步等自动化处理的过程感觉并没有那么方便,写了一篇文章得敲一堆命令才能发布,长期这么用简直是要让人抓狂,这篇文章就是如何把这个事情自动化。

这里我们要用到dropbox来同步我们的博客内容,这又是一个在大陆不存在的网站,在github上有极路由及小米路由的ss插件项目,搭好能访问外网的环境是前提条件。

dropbox有各平台的客户端,可以随时同步我们写的文章内容,我们也可以用手机写,用PC写,随时随地的记录灵感。安卓上有一个冷门的app叫MarkdownX(本人已经不用iOS很久,不晓得iPhone或者iPad上有啥好用的软件),这个是可以随时同步dropbox上的md文件及有良好排版的预览功能,PC上有各式的Markdown预览写作工具,可以自己挑个顺手的,个人偏向用visualcode加markdown的插件来写md文件。

具体路由该怎么跟dropbox同步呢,点这里下载作者写的一个sh脚本,该脚本测试已经稳定的运行在极路由上了,具体你又需要关注以下的配置修改点:

  • BASE_DIR 这个是hugo生成目录的上一级目录,作为整个同步及配置的基础目录,填绝对路径

  • SYN_DIR 这个是dropbox上的要同步的目录,比如在dropbox上新建一个dropmd目录,以后写文章也写在这里,也只有这里的目录会保持同步

  • OAUTH_ACCESS_TOKEN 获取dropbox的访问token用如下方法,访问这里点createapp,选dropbox API->full Dropbox,填入你想要的appname,点创建后,showaccesstoken,这里就得到了访问token,然后访问这个网址https://www.dropbox.com/1/oauth/authorize?oauth_token=你的token 点允许访问,现在就可以在这个字段填入你的token值了。

  • SITE_BASE 用hugo生成的网站目录

  • THEME_NAME 这个是你要使用的主题名

  • Markdown的兼容格式,由于hugo生成的md文件需要有一个头部信息,为了兼容原本的格式,作者脚本的兼容markdown文章应该这么写,先生成一个英文的md文件,头部第一行写成`内容`的格式,内容里应该包含 title=“文章标题” categories=[“分类1”,“分类2”,“分类n”] tags=[“标记1”,“标记n”] 内容项之间用空格分隔开。以下再写文章就是标准的markdown格式了。

修改成功了以后,脚本文件放到BASE_DIR路径下,在dropbox的SYN_DIR目录下写一篇md结尾的兼容格式文件文章,运行一下脚本:

chmod +x dropbox_sync.sh

./dropbox_sync.sh

如果成功则一切搞定,离大功告成越来越近啦,下面我们把这个脚本设置成定时运行,运行命令crontab -e最后一行填入*/30 * * * * /路径/dropbox_sync.sh > /日志路径/drop_sync.log,这样我们的脚本每30分钟运行一次拉取内容,当然如果你的博文太频繁或太偶然的话,也可以增长和缩短这个时限。

FAQ:

  • 为什么我dropbox上的文件路由器拉不下来脚本报错? 请关注一下路由器有没有做到外网的访问环境

  • 如果我修改了博文内容,可以同步吗? 不好意思,新增功能可能需要等,请随时关注博客内容

  • 我的照片要怎么同步呢? 跟上面回答一样哦,又是个新需求,实在需要先传到稳定的图床再引用吧

  • 我不喜欢这种主题,想换自己的个性网站? hugo官方有大量的主题,可以自己down下来做二次加工