Hexo建站,整理了500多篇文章恢复

真的花了很多很多时间,把自己的小站恢复了。
没有用任何现有的迁站工具,纯用python执行sql把文章导出了。
然后半编程半手工地修复各种文章里的标签、链接、公式、图片等等问题。
一些没啥意思的文章也删了,砍掉了50多篇吧。
说一些吐血的吐槽

第一个问题

刚搬到hexo就遭遇了hexo的post_link的bug

明明已经合并了,却需要等到7.1.2才能发布,现在主线的hexo版本是7.1.1

真的希望7.1.2赶紧发布。

第二个问题

rsync在windows下的bug问题

rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(231) [Receiver=3.2.7]
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(231) [sender=3.2.7]

这个我吐血了,各种查bug,最后发现是windows自带的ssh客户端有问题。
1.删掉windows的ssh客户端

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
Remove-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

2.把cwsync的ssh的bin路径加到path里,往前调整;
一直上移到which ssh显示cwsync的bin路径才行。

3.配置_config.yml

deploy:  
  type: rsync
  host: [host]
  user: root
  root: /var/www/html/blog
  port: [port]
  delete: true
  progress: false
  args: --chown=www-data:www-data
  verbose: true
  ignore_errors: false

权限和路径都是坑,权限一定要给到www-data,默认的750不好改成755。
路径一定要给到…/blog/,我一开始给到/html,结果把/html下的文件全干掉了,无语。

第三个问题

数学公式的渲染引擎
我是真没搞清楚要用什么引擎了,next的官方配置文件里推荐的两条前端渲染道路,
一条是MathJax + hexo-renderer-pandoc
一条是KaTeX + hexo-renderer-markdown-it-plus/hexo-renderer-markdown-it
next的官方github里,还有一个 hexo-filter-mathjax,走的是后端渲染道路
就是 hexo-filter-mathjax + hexo-renderer-marked/hexo-renderer-pandoc
基本上就绕不过去那几个渲染插件了:
1)hexo-renderer-marked:hexo官方插件,渲染后很多东西要转义,处理较麻烦(我现在用的这个)
2)hexo-renderer-pandoc:很多主题推荐的插件,无法支持官方标签,都得改写成pandoc格式(没试,太麻烦了)
3)hexo-renderer-markdown-it-plus/hexo-renderer-markdown-it:next官网推荐的插件(装上以后就看不到图片了,不知道是不是也是不支持官方标签)

最后的最后,还是我手工过了一遍每一篇带数学公式的文章,累死。