背景
最近没事干,倒腾倒腾博客
毕竟之前的notion-blog也已经用很久了,
那玩意看上去美观,
实际上配置个时间线都不行
一开始我看上了obsidian的工作区编辑,
发现Quartz 4似乎还不错,
但Quartz 4十分简陋,
还没有主题配置,
便想到了Nodejs驱动的Hexo,
部署也简单。
正文
Hexo部署
Requirements: Nodejs、Git
先把hexo-cli装上:
npm i -g hexo-cli
Hexo站点初始化:
hexo init <folder>
cd <folder>
npm i
摘抄一段Hexo文档:
初始化后,您的项目文件夹将如下所示:
.
├── _config.yml
├── package.json
├── scaffolds
├── source
| ├── _drafts
| └── _posts
└── themes
其中,_config.yml是站点的配置文件,
通常需要修改:
...
title: "<site-title>"
...
author: <author>
avatar: <author-avatar>
language: zh-CN
timezone: 'Asia/Shanghai'
剩下的看文档去:https://hexo.io/zh-cn/docs/configuration
在source/_posts文件夹中,安放markdown格式的文章
建议带有以下属性:
---
title: <article-title>
date: <publish-date>
tags:
- tag1
- tag2
- ...
---
可选命令:
hexo generate:生成public文件夹
hexo clean:清除生成缓存
hexo server:预览
主题配置
Hexo主题页面:https://hexo.io/themes/
Github的Hexo-Theme Topic:https://github.com/topics/hexo-theme
找到想要的主题后:
以Stellar主题为例
简易配置
按照主题提供者应提供的主题安装方式进行安装
如Stellar主题为例:
(省略版本检查)
npm i hexo-theme-stellar
随后在_config.yml中配置
...
theme: stellar
并按照文档进行配置即可
进阶配置
将整个git库克隆到themes文件夹内,
在_config.yml中配置
...
theme: stellar
按照文档进行配置后,
可进入themes/stellar/layout/_partial/script.ejs中
进行进阶配置,
如安装katex或highlight.js等第三方插件
部署
类别一
请注意,本类部署方式不建议使用Hexo-Admin等动态生成插件
方式一:边缘生成(Recommand)
将整个项目文件夹推送至Github,
使用
Vercel:Hexo预设
GithubPages:文档
GitlabPages:文档
直接部署。
方式二:本地生成
本地进行hexo generate后,
仅将public文件夹推送,
使用GithubPages或Vercel部署。
类别二
本类部署方式即为:
hexo generate后,
使用hexo server --port <port>
启动服务器,随后在相应端口即可访问。
本类部署方式可拓展性更高,
如Hexo-Admin等插件可直接使用。