Hexo 搭建个人网站
引入
最近难得有段空闲时间,是时候折腾折腾那闲置已久的云服务器。
我平时有使用 Obsidian 记录一些个人技术笔记,有一些可以分享的东西。
虽然掘金等技术分享平台很不错,但哪有自己搭个人网站自在、有意思。于是,在一番寻找与对比后,我决定用 Hexo 搭建 Blog。
本地搭建
安装
一般来说全局安装即可,方便使用
1 | npm install -g hexo-cli |
初始化
进入本地存放博客源码的路径,执行 hexo init
,等待脚手架初始化博客即可。
值得注意的是,或许是因为我全局安装了 pnpm
,脚手架初始化最终用的是 pnpm
来下载安装依赖。这导致后来主题的安装出了一些问题。因此,建议初始化后,若目录中有 pnpm-lock.yaml
,那么将 node_modules
与 pnpm-lock.yaml
全部删除,重新执行 npm install
。
主题
我用的是 Icarus 主题,挺清爽的,而且⭐多总没错哈哈
NPM
不需要个性化修改可以直接 npm 安装:
1 | npm install -S hexo-theme-icarus hexo-renderer-inferno |
记得在 Hexo 配置中切换主题为 icarus
源码
有个性化需求的建议通过源码安装:
- 从 GitHub 的仓库中下载源码的压缩包,解压为 Hexo 目录下的
.\themes\icarus
- 在 Hexo 配置中切换主题为
icarus
- 执行
hexo server
,根据报错,缺少什么就 npm 安装什么
配置
Hexo 的配置文件为 _config.yml
Icarus 主题的配置文件为 _config.icarus.yml
Icarus 主题自带了很多插件,不需要的可以从配置文件中删去
参考:
运行
1 | hexo server -d |
-d
参数,可以让 Hexo 本地服务器热重载,避免每次修改后都要手动重载。
打开默认地址 http://localhost:4000/
就可以看到本地搭建好的博客了。
云端部署
本地搭建好,确认无误之后就可以开始部署了。
官方给出的部署方案中,最简单、最适合个人云服务器的一定是 SFTP 部署。
SFTP 部署会将编译后的网页选择性上传到云端,简洁高效。
对于多台本地设备的用户,要做好博客源码的同步。我使用的是 Obsidian 中的同步插件,将整个库同步到 Github。
安装插件
1 | npm install hexo-deployer-sftp |
编辑配置
1 | # _config.yml |
执行
1 | hexo deploy --generate |
该指令会将博客源码编译,然后通过配置好的部署方式上传到云服务器。
最后
我的第一篇分享到这里就结束了。
Vector Landscape Vectors by Vecteezy