Halo博客体验一日游

1. 前景提要

用久了solo博客是不是想要体验一下新的博客系统呢?但是一想到已经写的一百多篇博客进行迁移就是一个麻烦事。在github冲浪的时候发现Halo博客的主题看上去还不错,迁移不算特别麻烦,不如来试试。

2. Halo博客

Halo博客的开源地址是:Halo

而适配Halo的主题预览如下:Halo主题

他们的社区是:Halo社区

2.1 使用体验

先来说说体验吧,这样能给你一些参考决定是否要进行迁移。

2.2 让我感觉到新颖的点

这里说到的是新颖的点而不是优点,因为一些特性在我看来有些还是挺不错的,但是或许在别人的眼中又是一个缺点。

2.2.1 部分主题纯白色的背景,更多的内容展示

以及Halo的论坛中有着一些看上去不错的博客主题,时间限制让我没办法一个个去体验

2.2.2 浏览计数情况

与Solo相比,Solo的浏览量更为准确,不会因为你的刷新而导致浏览器+1,但是Halo好的一点在于浏览量因为是调的本地的数据,不会因为请求不到数据而变成0

2.2.3 能够设置支付宝,微信打赏功能

对于个人站点小博客来说,服务器的支出是一方面,而投放的谷歌广告只是杯水车薪,所以或许添加的支付宝,微信打赏功能能给博客带来一点更多的收入
当设置了这个开关之后,在每篇博客的最后面可以看到一个支付宝捐赠的图标,效果如下

2.2.4 图片和附件是在本地,或者你的OSS

上传的图片是直接存在服务器的,不是像Solo一样存的黑客派的图床,这会给我更多的一点安全感,当然如果你的服务器带宽不够,那么其实黑客派的图床能给你的博客带来更好的体验。

2.3 Halo发现的不好的点

2.3.1 默认窗口下,写博客的窗口太小

这点虽然有个按钮可以全屏去写,但是明明窗口可以做的更大一点呀

2.3.2 Halo写博客的体验不如Solo

这篇博客是在思源笔记下完成的,然后复制到Halo上🤪

  • 没有Solo所见即所得的模式(重要)
  • 没有写完后一键复制到知乎的功能(重要)
  • 导航目录没有默认打开
  • 沉浸式阅读功能对我来说没啥卵用

2.3.3 写博客完成后配置项太多

写完博客到最后发布需要配置:

  • 开启评论:
  • 是否置顶
  • 分类目录
  • 标签
  • 摘要
  • 封面图
    甚至还有高级设置:访问密码,SEO设置,元数据

抛开高级设置不谈,在我用掘金写文章的时候也是感觉明明写博客已经快成功了,但是最后一步我不得不再画一个封面图,选择一些我可能用不上的分类目录(标签还是需要的),更喜欢Solo简单设置一个标签的感觉,然后随便写点摘要就发布的感觉

2.3.4 代码复制需要调教


看上去是不是还不错?那你就错了,这是我在迁移Solo的所有博客到Halo之后发现的问题,如果代码是xml,
那么直接复制下来粘贴到IDE中的话,就变成了这样。所以你需要调试几个主题,测试会不会出现这样的情况,如果我是一个读者,我是很抗拒复制这样的代码的。

ok,说完了以上的体验,如果你觉得Halo还不错,和我一样还是很好奇怎么迁移Solo博客就接着往下看

3. 迁移Solo博客到Halo

3.1 下载Solo博客数据

在进行迁移到Halo之前,我们需要导出Solo的所有数据。
在Solo博客的“工具-其他”中,可以找到“导出Markdown文件”

文件下载之后,可以得到一个压缩包,解压开来,有三个文件夹,分别是:
drafts(草稿) password(带密码的博客) posts(已经发布的博客)

3.2.1 将博客中的黑客派图床数据替换为阿里云OSS

这里写了一个工具,markdown文档中的图片进行上传到OSS后会替换掉之前的图片链接,然后生成一个新的带aliyun开头的文件。

功能的实现很简单,就是将posts文件夹中的所有markdown文档中的图片链接找出来,然后上传到你的阿里云OSS,然后进行替换之前的链接。

aliyunOSS-upload-util

3.2.2 阿里云OSS简单使用

这个篇幅是为了介绍如何使用阿里云OSS的接口功能
在阿里云官网搜索OSS

点击管理控制台,进入管理界面

在Bucket中创建一个新的Bucket,然后选择读写权限为 公共读 ,其他的权限自己看着来。

移到你的头像上方,获取AccessKey

创建AccessKey

获取到AccessKey和Secret

还需要获取到一个东西,是刚刚创建的Bucket的endpoint和Bucket域名,点击Bucket中,点击概览便可以看到

在上述过程中,将AccessKey和Secret,endpoint和Bucket域名填入代码,然后点击运行,就能生成一份新的博客,但是新的博客中的图片是用的你的OSS进行存储的

框住的是生成出来的

3.3 Halo的搭建

这里的话我推荐直接参考Halo官方文档,比我赘述更加有效

3.4 导入博客数据进Halo

在完成这一步操作的前,你需要登录你的Halo后台,然后配置阿里云OSS

配置刚刚你在阿里云OSS生成的AccessKey和Secret

回到附件菜单进行测试,当能够上传的时候说明你配置对了,如果不行可以通过
docker logs containerId 在docker中查看对应的日志

终于来到最后一步了,在Halo的小工具中,可以将刚刚生成的markdown文档进行导入。
因为Solo导出的markdown文档是有时间点的,所以文章的发布时间也能够正确的导入到Halo中


大功告成!

# solo  博客  Halo 

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×