Hexo + NexT + Github搭建个人博客
文章目录
- 一、 安装
- 二、配置相关项
- NexT config
- 更新主题
- 主题样式
- 本地实时预览
- 常用命令
- 三、主题设置
- 1.侧边栏
- 2.页脚
- 3.帖子
- 发布字数统计
- 4.自定义
- 自定义页面
- Hexo 的默认页面
- 自定义 404 页
- 自定义样式
- 5.杂项
- 搜索服务
- 四、第三方插件
- NexT 自带插件
- 评论系统
- 阅读和访问人数统计
- 五、部署到GitHub Pages
- 六、小技巧
- 在 PowerShell 上通过自定义命令来简化目录导航
- 参考文档
零成本搭建博客,下面就介绍一下我的搭建过程以及一些踩过的坑。参考样式:点击访问
零成本搭建博客,国内访问也没问题,下面就介绍一下我的搭建过程以及一些踩过的坑。参考样式:点击访问
一、 安装
-
安装 Hexo
-
安装 NexT 主题
npm install hexo-theme-next
-
在 Hexo config 中把主题改为 NexT
theme: next
二、配置相关项
NexT config
因为我是用 npm 安装的主题,所以需要将他的配置文件单独拉取出来,这也是官方推荐的,可以根据下面这篇文章去配置
#config-next-yml
现在我们得到了 NexT 主题的配置文件 _config.next.yml
了
更新主题
npm install hexo-theme-next@latest
主题样式
#scheme: Muse
#scheme: Mist
#scheme: Pisces
scheme: Gemini
drakmode # 深色模式
现在可以看我们的站点了 hexo clean && hexo s
本地实时预览
hexo g -w
hexo generate --watch
常用命令
hexo new <title> # 新建文章
hexo new page <"page name"> # 建立新页面
hexo clean # 清除缓存文件
hexo list <type> # 列出所有路由
hexo s # 启动
hexo clean && hexo d # 部署
三、主题设置
下面我仅用相关参数表示对应功能,大家在 NexT 配置文件中
Ctrl + F
即可找到它们。
1.侧边栏
toc - 侧边栏目录
favicon - 站点 icon,放 \source
目录下即可,因为我想要把 \source\images
用于存放帖子的图片
custom_logo - 头像, \source
creative_commons - CC 许可证,中文为 zh-hans
menu - 配置菜单项,就是主页、归档那些什么的显示
avatar - 更换侧边栏头像
social - 侧边栏社交链接
links - 友链
2.页脚
powered - 由 Hexo & NexT.Gemini 强力驱动
reward - 打赏
follow_me - 文章底部社交链接
3.帖子
tag_icon - 将正文底部的标签左边的#
替换为icon
<!-- more -->
- 手动断开文章,使得首页不显示文章全文
发布字数统计
-
安装
npm install hexo-word-counter hexo clean
-
Hexo config:
symbols_count_time
-
NexT config:
symbols_count_time:symbols: true # 帖子字数time: true # 阅读时间total_symbols: true # 站点总字数total_time: true # 站点总阅读时长awl: 4 # 平均字长(以单词为单位的字符数)wpm: 275 # 每分钟的平均字数
4.自定义
自定义页面
-
先创建一个页面
cd [your-site] # 进到站点中 hexo new page [page-name] # 创建页面
-
在文件开头的 YAML 块(用于写入配置)中添加配置
-
通过主题的配置文件将你所创建的页面路由写入菜单menu,图标在 font awesome 中找
# 标签 --- title: Tags date: 2014-12-22 12:39:04 type: tags ---
Hexo 的默认页面
- 《标签》页:记得加
type: tags
,它的配置项在tagcloud
- 《分类》页:加上
type: categories
即可
自定义 404 页
-
确保禁用
relative_link
-
新建 404 页
cd hexo-site hexo new page 404
用户是否可以重定向到 404 页面取决于网站托管服务或 Web 服务器的设置,而不是 Hexo。例如,如果使用 Nginx 作为服务器,则还需要在
nginx.conf
文件中配置 404 页面。
自定义样式
自定义文件
与数据文件一样,您可以将所有自定义布局或样式放置存放在 source/_data
中,并在NexT config 中把 custom_file_path
中的注释打开相应的注释打开。
动态背景的配置,由于感觉有点占内存后面我给取消掉了
5.杂项
reading_progress - 顶部阅读进度加载条
back2top - 返回顶部按钮
bookmark - 书签(保存用户阅读进度)
github_banner - 右上角的 GitHub 标签
font - 更换字体
pace - 页面加载期间顶部的进度条
codeblock - 代码块相关设置
搜索服务
-
npm install hexo-generator-searchdb
安装 -
Hexo config:
search:path: search.xmlfield: postcontent: trueformat: html
-
Next cofig:
local_search:enable: true
四、第三方插件
官方插件库
NexT 自带插件
pajx - 加速访问网页
fancybox - 查看图片(更多自定义)
mediumzoom - 查看图片(仅查看,这两个不能同时开)
lazyload - 延迟图片加载
pangu - 在中文和英文数字间加个空格
quicklink - 加快访问速度
pace - 进度条
评论系统
我选择 Waline ,非常好用 ,不用登录也可以评论,注意一个就是那边的 serverURL
记得填成 Domains
旁的网址,也有 NexT 主题的插件,可以点击进去配置。
Waline官方文档
Waline用 Vercel 部署非常方便,但是奈何被墙国内无法访问😭(白嫖党泪目)最终还是改用了utterances,屈服了,Waline等以后有自己服务器再配置吧(可能)
-
安装
-
在 NexT config 中找到并启用
utterances
阅读和访问人数统计
参考这篇博客
五、部署到GitHub Pages
可以看 Hexo 官方文档配合食用
-
建立名为 <username>.github.io的储存库
-
在项目目录底下安装插件用于一键部署
npm install hexo-deployer-git --save
-
在 Hexo config 下添加以下配置
deploy:type: gitrepo: https://github.com/<username>/<project>branch: gh-pages
-
执行
hexo clean && hexo d
,即可配置成功
六、小技巧
在 PowerShell 上通过自定义命令来简化目录导航
效果:
-
notepad.exe $PROFILE
打开 pwsh 的配置文件 -
添加以下内容
function order {Set-Location -Path "your path" }
-
上面的 order 可以改成自己想要的指令,路径根据自己的工作区来设置
-
完成后保存并关闭文件,使用
. $PROFILE
应用一下配置
最后来说一下正常写文章的流程:
cmd + r
打开 PowerShell(我习惯是这样)- cd 到项目目录
hexo new "文章名称"
typora .\source\_posts\title.md
打开我们的文章hexo clean && hexo d
(也可以先hexo g && hexo s
本地预览下)
参考文档
NexT 主题官方文档
Hexo 官方文档
utterances配置参考博客
相关文章:

Hexo + NexT + Github搭建个人博客
文章目录 一、 安装二、配置相关项NexT config更新主题主题样式本地实时预览常用命令 三、主题设置1.侧边栏2.页脚3.帖子发布字数统计 4.自定义自定义页面Hexo 的默认页面自定义 404 页自定义样式 5.杂项搜索服务 四、第三方插件NexT 自带插件评论系统阅读和访问人数统计 五、部…...
使用Sum计算Loss和解决梯度累积(Gradient Accumulation)的Bug
使用Sum计算Loss和解决梯度累积的Bug 学习 https://unsloth.ai/blog/gradient:Bugs in LLM Training - Gradient Accumulation Fix 这篇文章的记录。 在深度学习训练过程中,尤其是在大批量(large batch)训练中,如何高…...
基于本地消息表实现分布式事务
假设我们有一个电商系统,包含订单服务和库存服务。当用户下单时,需要在订单服务中创建订单,同时在库存服务中扣减库存。这是一个典型的分布式事务场景,我们需要保证这两个操作要么都成功,要么都失败,以保证数据的最终一致性。 项目结构: 订单服务(Order Service)库存服务(Inv…...

Web3与加密技术的结合:增强个人隐私保护的未来趋势
随着互联网的快速发展,个人隐私和数据安全问题越来越受到关注。Web3作为新一代互联网架构,凭借其去中心化的特性,为个人隐私保护提供了全新的解决方案。而加密技术则是Web3的重要组成部分,进一步增强了隐私保护的能力。本文将探讨…...

广播网络实验
1 实验内容 1、构建星性拓扑下的广播网络,实现hub各端口的数据广播,验证网络的连通性并测试网络效率 2、构建环形拓扑网络,验证该拓扑下结点广播会产生数据包环路 2 实验流程与结果分析 2.1 实验环境 ubuntu、mininet、xterm、wireshark、iperf 2.2 实验方案与结果分析…...
Vscode——SSH连接不上的一种解决办法
一、完整报错: > @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ > IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! > Someone could be eavesdropping on you right now (man-in-the...
ChatGPT大模型极简应用开发-目录
引言 要理解 ChatGPT,了解其背后的 Transformer 架构和 GPT 技术一路的演进则变得非常必要。 ChatGPT 背后的 LLM 技术使普通人能够通过自然语言完成过去只能由程序员通过编程语言实现的任务,这是一场巨大的变革。然而,人类通常容易高估技术…...

EI Scopus双检索 | 2025年第四届信息与通信工程国际会议(JCICE 2025)
会议简介 Brief Introduction 2025年第四届信息与通信工程国际会议(JCICE 2025) 会议时间:2025年7月25日-27日 召开地点:中国哈尔滨 大会官网:www.jcice.org 由黑龙江大学和成都信息工程大学主办,江苏科技大学协办的2025年第四届信…...

重学SpringBoot3-Spring Retry实践
更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞??收藏评论 重学SpringBoot3-Spring Retry实践 1. 简介2. 环境准备3. 使用方式 3.1 注解方式 基础使用自定义重试策略失败恢复机制重试和失败恢复效果注意事项 3.2 编程式使用3.3 监听重试过程 监…...
TiDB 和 MySQL 的关系:这两者到底有什么不同和联系?
TiDB 和 MySQL 的关系:这两者到底有什么不同和联系? 在了解 TiDB 和 MySQL 之间的关系时,很多人可能会有疑问:这两个数据库到底有什么区别和联系?是不是 TiDB 就是 MySQL 的升级版?或者 TiDB 是一种“替代…...

【Java】JDK17的下载安装(与JDK1.8相互切换)
本文以参考以下链接为主:JDK17 如果上述操作不生效,请看以下操作: 添加以下变量并移动到最上面即可...
CSS3 3D 转换介绍
CSS3 中的 3D 转换提供了一种在二维屏幕上呈现三维效果的方式,主要包括translate3d、rotate3d、scale3d等转换函数,下面来详细介绍: 1. 3D 转换的基本概念 坐标系 在 CSS3 的 3D 空间中,使用的是右手坐标系。X 轴是水平方向&…...
Vue3 Element-Plus el-tree 右键菜单组件
参考代码:实现Vue3Element-Plus(tree、table)右键菜单组件 这篇文章的代码确实能用,但是存在错误,修正后的代码: <template><div style"text-align: right"><el-icon size"12" color"#…...

鸿蒙学习构建视图的基本语法(二)
一、层叠布局 // 图片 本地图片和在线图片 Image(https://developer.huawei.com/allianceCmsResource/resource/HUAWEI_Developer_VUE/images/080662.png) Entry Component//自适应伸缩 设置layoutWeight属性的子元素与兄弟元素 会按照权重进行分配主轴的空间// Position s…...

python-leetcode-存在重复元素 II
219. 存在重复元素 II - 力扣(LeetCode) class Solution:def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:seen set()for i, num in enumerate(nums):if num in seen:return Trueseen.add(num)if len(seen) > k:seen.remove…...

P6周:VGG-16算法-Pytorch实现人脸识别
🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊 我的环境 语言环境:Python 3.8.12 编译器:jupyter notebook 深度学习环境:torch 1.12.0cu113 一、前期准备 1.设置GPU im…...

BeanFactory 是什么?它与 ApplicationContext 有什么区别?
谈到Spring,那势必要讲讲容器 BeanFactory 和 ApplicationContext。 BeanFactory是什么? BeanFactory,其实就是 Spring 容器,用于管理和操作 Spring 容器中的 Bean。可能此时又有初学的小伙伴会问:Bean 是什么&#x…...

虚幻基础-1:cpu挑选(14600kf)
能帮到你的话,就给个赞吧 😘 文章目录 ue非常吃cpu拉满主频打开项目编写蓝图运行原因 时间长 关于压力测试 本文以14600kf为例,双12购入,7月份产。 ue非常吃cpu 经本人测试,ue是非常吃cpu的。 拉满主频 无论任何时间…...
多种vue前端框架介绍
学如逆水行舟,不进则退。 在现今的软件开发领域,Vue.js凭借其高效、灵活和易于上手的特性,成为了前端开发的热门选择。对于需要快速搭建企业级后台管理系统的开发者而言,使用现成的Vue后台管理系统模板无疑是一个明智之举。 本文…...

jenkins-node节点配置
一.简述: Jenkins有一个很强大的功能: 即:支持分布式构建(jenkins配置中叫节点(node),也被称为slave)。分布式构建通常是用来吸收额外的负载。通过动态添加额外的机器应对构建作业中的高峰期,或在特定操作系统或环境运行特定的构建…...

测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...

srs linux
下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...

Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...

ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...

10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...

面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...