搭建Hexo博客平台
前言
这里浅浅记录一下博客平台的创建步骤
前期准备
环境配置
- 系统:Windows10家庭版
- Node.js: 22.12.0
- npm:10.9.2
- Hexo-cli:4.3.2
- hexo-theme-next:8.21.1
相关链接
搭建过程
安装Hexo
- 安装
hexo-cli
(全局):npm install -g hexo-cli
- 创建一个新的文件夹,并确保里面没有任何文件
- 初始化
hexo
。在新文件夹中输入命令:hexo init
- 安装别的依赖文件:
npm install
配置Hexo
主题安装
由于之前的博客平台使用的是Next主题,因此进行继承,安装Next主题。
安装命令:npm install hexo-theme-next
在Hexo的_config.yml
文件中找到theme
,将其修改为next
1 | ## Themes: https://hexo.io/themes/ |
与通过GitHub下载安装主题包不同的是,通过这个方法安装的主题包,会存储在node_modules
这一文件夹下,名字为hexo-theme-next
,并不是简单存储在theme/next
中
主题配置
根据之前的博客内容进行整合,同时引入Waline作为评论平台。这里为了篇幅方便不再进行赘述,若想查看详细的配置文件说明移步:Next主题配置说明(这是张饼,应该没人想看,没人想看就不更了)
Hexo配置
同理,根据之前的博客平台信息进行整合,详细配置文件说明移步:Hexo配置说明
插件安装
搜索插件安装
npm install hexo-generator-searchdb
安装
在Hexo配置文件中添加
1 | search: |
在Next主题配置文件中添加
1 | # Local search |
博文加密插件安装
npm install --save hexo-blog-encrypt
输入命令安装
在Hexo配置文件中添加配置信息:
1 | # Security |
尾言
npm warn deprecated cuid@2.1.8
在更新Hexo版本的时候发现有如下提示:
npm warn deprecated cuid@2.1.8: Cuid and other k-sortable and non-cryptographic ids (Ulid, ObjectId, KSUID, all UUIDs) are all insecure. Use @paralleldrive/cuid2 instead.
经检查后发现是Hexo所使用的cuid
模块过时了,通过询问了下GPT,GPT给出的答复是cuid
与cuid2
相似,但后者更改了有些实现方式,同时查看为什么将cuid置于过时,发现原因是可能会造成隐私泄露。但作为一个个人博客系统,没有隐私防护需求😂并且为防止Hexo未进行相关更改,盲目更换依赖包容易导致程序报错为保证Hexo的正常运行emmm,因此决定不管他
Next主题的两个仓库问题
简单来说,问题就是 theme-next 团队的 owner - Ivan Nginx 始终拒绝向其它任何团队成员提供足够的权限,且 owner 本人自 2019 年 10 月起已连续半年不在线,导致其它活跃的团队成员无法管理仓库,也无法邀请新的成员。
由于对 theme-next 团队的未来不抱有期望,我作为 theme-next 的主要贡献者,自 2020 年 4 月起停止为旧的仓库贡献代码,并创建了新的组织,以确保维护工作正常进行。https://github.com/next-theme/hexo-theme-next/issues/4#issuecomment-626205848