Hexo+github搭建个人专属博客
Hexo+github搭建个人专属博客
一.基础环境配置
1.git下载与安装
(1)去官网下载git软件,之后参考黑马的视频讲解进行一些账号信息的初始化,以及生成密钥等等,这些是后续从github或者gitee上推送或者拉取代码的关键。
视频链接如下:
【黑马程序员Git全套教程,完整的git项目管理工具教程,一套精通git】 https://www.bilibili.com/video/BV1MU4y1Y7h5/?p=5&share_source=copy_web&vd_source=aea6b8ca9dfcd60d1a152bd9497b5c60
(2)安装完成后,在cmd中输入如下指令:git –version,出现git版本信息,说明安装成功
2.Node.js下载与安装
(1)浏览器搜索进入Node.js官网,下载对应的安装文件(LTS为长期支持版,更稳定),
(2)除了需要修改一下安装路径外(我习惯放在D盘),其他安装进程,一路next即可
(3)等待安装完成,在cmd中输入如下指令:node -v,出现node.js版本信息,说明安装成功
2.1 Node.js环境配置
2.1.1 配置全局安装的模块路径和缓存路径
(1)创建文件夹目录,在nodejs根目录,创建node_global,node_cache文件夹
(2)管理员身份- 打开CMD,配置路径:(注意一定要管理员身份运行CMD!!!路径改成你自己的路径,不要无脑复制!!!)
1 | npm config set prefix "D:\develop\Node\anzhuang\node_global" |
2.1.2 配置环境变量
win10&win11:右键此电脑——属性——高级系统设置——高级——环境变量
(1) 创建 NODE_HOME 变量
变量值为nodejs的安装地址
(2)在 系统变量 中 选择 Path 修改和添加如下属性:
添加node_global,node_cache:
2.2 测试效果
全局安装最常用的 express 模块 进行测试
命令如下:
1 | npm install express -g |
2.3 全局配置淘宝镜像
注意一定要管理员身份运行CMD!!!
1 | npm config set registry https://registry.npmmirror.com |
安装cnpm(安装Hexo框架要用到)
1 | npm install -g cnpm |
查看配置
1 | npm config ls |
3.安装Hexo框架
(1)命令行中通过 cnpm install 命令安装您想要的程序,可在 cmd 中输入cnpm -v, 出现cnpm 版本信息说明安装成功
注意:本教程所有用到cmd的都必须要以管理员身份运行才可以,下图展示如何在电脑上以管理员身份运行
(2) 安装hexo
1 | cnpm install -g hexo-cli |
可在 cmd 中输入 hexo -v, 出现hexo版本信息说明安装成功
4.使用Hexo搭建博客
4.1 建立存放hexo项目的文件夹,我放在了D盘的Hexo文件夹内部,刚开始里面什么都没有,图片的这些内容是后续操作才产生的
4.2 在该文件夹(D:\Hexo)下右键选择Open Git Bash here,图示为安装目录
4.3 在git窗口,输入:hexo init,进行项目的初始化
4.4 初始化完成后,在存放项目的文件夹中会出现以下配置文件
4.5 在git窗口,输入:hexo s,开启本地预览服务,打开浏览器访问 http://localhost:4000 即可看到博客内容
页面效果图如下:
至此,博客网站已经初步配置成功
5.更换主题
主题文件存放在themes文件夹下
5.1 主题搜索
hexo 官方网站,Themes | Hexo,点击名字即可跳转进入github网站
5.2 主题下载
(1)获取喜欢的hexo主题的http链接和主题名
(2)在项目文件夹下,使用Open Git Bash here打开git窗口,输入以下指令
在这个文件夹内部,单机鼠标右键,进入Git Bash here入口
1 | git clone git@github.com:jerryc127/hexo-theme-butterfly.git hexo-theme-butterfly |
(3)主题下载完毕,在themse文件夹下会出现名为:hexo-theme-butterfly的主题文件夹
(4)打开Hexo根目录下的_config.yml文件,将theme: landscape改为theme: hexo-theme-butterfly用于切换主题
也就是说根据themes文件夹内部的文件夹名字来选择对应的主题渲染。
(5)然后在git Bash here窗口,输入以下指令,打开浏览器访问 http://localhost:4000 即可看到新的博客主题
1 | hexo clean //执行此命令后继续下一条 |
生成butterfly主题博客展示
注意:
要想获取SSH克隆地址,必须提前在github中配置你自己的git密钥
默认已经提前生成好密钥,因为第一步git初始化中就有这个步骤。这里直接获取,下面的操作都在Git Bash here中进行
step 1 获取密钥
1 | cd ~/.ssh |
1 | cat id_rsa.pub |
step 2 github配置密钥
进入自己账号下的SettingI(右上角)
然后点击SSH and GPG keys, 再点击New SSH key添加
自己起个名,粘贴上面的内容,然后添加
验证是否设置成功(GIt Bash here中进行)
1 | ssh -T git@github.com |
第一次,可能不会直接显示成功,需要你给他一个指令:yes,后续他就会把这个信息存下来,不再会重复询问你了。如下显示
1 | $ ssh -T git@github.com |
只需要回复:yes 即可!
注意:
git把资源推至github,下面代码适用与第一次推送,后续再推送,只需add,commit,mpush即可
1 | # 初始化 Git |
国内网站如何不用科学上网,便可快速访问,详情请查看另一篇博文。
二. butterfly主题美化
注意:
cmd中进入d盘的Hexo文件夹指令
1 | cd /d D:\Hexo |
1.副标题
themes-hexo-theme-butterfly-config.yml
1 | # The subtitle on homepage |
2.图片与标题显示
首先,需要修改Hexo目录下的config.yml的一些配置
1 | post_asset_folder: true |
当资源文件管理功能打开后,Hexo将会在你每一次通过 hexo new a 命令创建名为a的新文章时,会自动创建一个文件夹。 这个资源文件夹将会有与这个文章文件一样的名字。 将所有与你的文章有关的资源放在这个关联文件夹中之后,你可以通过相对路径来引用它们,这样你就得到了一个更简单而且方便得多的工作流。
其次,修改typora的图像保存位置设置如下
然后,在正常编写文章内容时,不需要管,会按照指定的保存路径保存图片,但是这样上传到网站上是无法展示图片的。当文章全部完成之后,我们需要在每个图片的上面都按照下面的格式加上一行图片相关的markdown代码,加完之后,删除原先的图片,这样网站就可以根据markdown的asset_img标签插件解析渲染图片。
正确的引用图片方式是使用下列的标签插件
1 | {% asset_img example.jpg%} |
原图片markdown若为:
改造后的依据标签插件的markdown代码如下–通过相对路径引用图片
1 | {% asset_img image-20251122153351815.png%} |
所有文章前面的asset_img都是不变的,只需要修改图片的文件名即可。
3.文章标题的显示
有时候我们完成了文章的编写以及图片的上传之后,发现在网站上的文章标题竟然是untitled,我们需要进行如下操作,
在文章最上方,单机鼠标右键,插入Yaml Front matter
然后在这个框框里,按照规定格式命名标题
1 | title: Hexo制作博客 |
这个文章的标题就会显示为Hexo制作博客
4.url的配置
在Hexo的根目录下的config.yml中修改url配置,改成自己部署上线的网址名
1 | # URL |
5.butterfly主题
我们需要根据theme主题自己当初下载时定义的文件名(hexo-theme-butterfly,)把其内部自定义的配置文件_config.yml内容完整复制一份,并在Hexo文件根目录,创建一个新文件_config.hexo-theme-butterfly.yml,把刚才复制的主题内部的配置文件内容完整粘贴过去,这样再用Netlify部署上线的时,才能被正确解析,否则无法正常渲染。
同时,D:\Hexo\themes\hexo-theme-butterfly\source\img文件夹内部,自定义加入的图片都要复制一份仅根目录的这个文件夹内部,才能被正确扫描部署:D:\Hexo\source\img
6.插入音乐
(1) 安装 hexo-tag-aplayer 这款插件。执行如下指令:
以超级管理员身份进入cmd,然后运行如下程序
1 | npm install --save hexo-tag-aplayer |
(2) 修改或者加入一些配置信息
下面这个配置信息需要添加在Hexo文件根目录下的_config.yml文件中,原始文件中没有
1 | aplayer: |
修改如下内容
1 | # Inject the css and script (aplayer/meting) |
以本博客为例,在博客Hexo的根目录下的source文件内部创建music文件夹并在其内部创建文件index.md文件路径如下(\source\music\index.md文件)
index.md内容如下:
1 | {% meting "1805939548" "netease" "song" "autoplay" "mutex:true" "listmaxheight:100px" "preload:none" "autoplay = true" "theme:#ad7a86"%} |
“1805939548”网易云音乐的Id信息,”netease”代表网易云;”song”:song代表歌曲,playlist表示歌单
(3) 全局吸底Aplayer播放器
把下面的代码插入到主题配置文件的 inject.bottom下面即可。–利用vscode的ctrl+f快捷搜索定位
1 | inject: |
如果你想切换页面时,音乐不会中断。请把主题配置文件的 pjax 设为 true即可
1 | pjax: |
7.添加live-2d模型
**(1)安装插件- Hexo-Helper-Live2D **
1 | npm install --save hexo-helper-live2d |
(2)安装模型库
用户可以通过安装不同的模型包来更换看板娘的模型。例如,安装 `live2d-widget-model-wanko模型:
1 | npm install --save live2d-widget-model-wanko |
(3)在主题配置文件加入下面的信息
在全局配置文件.config.yml中最底部添加下面这段代码
1 | live2d: |
8.标签与分类
一个典型的 Hexo 博客目录:
(1)写文章的基本操作
创建一个文章文件
1 | hexo new post "我的第一篇文章" |
生成的文件在 source/_posts/我的第一篇文章.md。
也可以直接把typora中的.md文件复制到hexo内部的source/_post目录内部,但是要在文章顶部加上Front-matter信息,该篇文章才能被hexo识别为博客文章并渲染。
文章头部 Front-matter
1 | title: 微服务相关知识点及其组件 |
1 | title: Hexo+github搭建个人专属博客 |
(2)导航栏标签跳转
Hexo 不会自动生成 /categories/、/tags/、/archives/ 页面,需要手动新建:
1 | hexo new page categories |
生成的文件在 source/的对应文件夹内部,通过修改idex.md修改显示的内容
这样访问 /categories/ 就能显示分类索引
同时如果你在菜单里配置了独立页面入口,都需要按照上面的操作在 source/ 下新建对应文件夹:
(3)在文章上加标签信息
文章头部用Front-matter加入下面的内容,自行根据具体标签,分类信息进行修改
1 | title: 微服务相关知识点及其组件 |
头部信息补充说明:
置顶文章:在 Front-matter 加 top: true。
9.修改文章封面
在Hexo根目录下的source文件夹下创建一个medias文件夹,然后里面放入图片,在cover选项下: /img/图片名字,就可以引入
1 | title: 关于笔者 |
效果如下:






