从零开始搭建个人博客
1本人使用GitHub+Hexo+Vercel搭建博客
- 注册GitHub
- 安装Git
- 绑定GitHub
- 购买域名
- 安装node.js和Hexo
- 解析域名
- 设置next主题
- 优化主题
- 设置菜单
- 设置建站时间
- 设置头像
- 网站图标设置
- 设置动态背景
- 设置背景图片
- 主页文章添加阴影效果
- 添加顶部加载条
- 设置预览摘要
- 设置侧边栏显示效果
- 侧边栏推荐阅读
- 添加社交链接
- 设置博文内链接为蓝色
- 显示文章字数和阅读时长
- 显示站点文章总字数(另一种统计站点总字数的方法)
- 设置文章末尾”本文结束”标记
- 文章末尾添加版权说明
- 添加访问量统计
- 添加评论功能
- 添加Fork me on Github
- 安装Markdown编译器
- 安装RSS插件
- 项目主页添加README
- 忽略要编译的文件
- 代码块样式自定义
- 支持mathjax公式
- 图床网站
- 本地搜索
- Hexo博客提交百度和Google收录
- 博文置顶
- 添加打赏
- 添加分享(未完成)
- 图片可点击放大查看,放大后可关闭(fancybox可能有点问题,暂时未实现)
- 参考
注册GitHub
打开网站GitHub: Let’s build from here · GitHub
点击右上角sign up,然后正常输入邮箱,密码,用户名
然后需要做真人验证和邮箱验证,看到以下页面即成功
然后可以选择学生优惠(待更新)
完成登陆之后可以打开
在code这里download zip
安装Git
绑定GitHub
购买域名
安装node.js和Hexo
解析域名
设置next主题
我使用的是next(v7.7.1),下载地址
打开博客根目录Blog文件夹,右键Git Bash,输入如下代码将next主题下载到目录Blog/themes:
1 | git clone https://github.com/theme-next/hexo-theme-next themes/next |


1 | # Site |
主题语言主要是看你的themes/next/language中的简体中文是 zh-CN 还是 zh-Hans:
next主题有四种,如下依次为Muse、Mist、Pisces、Gemini :



我选的是Gemini,打开目录Blog/themes/next/下的_config.yml(称为主题配置文件),只要将你选的主题前的#删除就行了:
1 | # Schemes |
回到根目录打开Git Bash,输入如下三条命令:
1 | hexo clean |
完成后打开你的博客:
附:
1、如果hexo s看的到样式,在github访问的时候看不到样式,在根目录下的_config.yml的最后的
1 | deploy: |
更改为
1 | deploy: |
再 hexo clean && hexo g && hexo d
优化主题
设置菜单
打开主题配置文件即themes/next下的_config.yml,查找menu,将前面的#删除就行了:
1 | menu: |
“||”前面的是目标链接,后面的是图标名称,next使用的图标全是图标库 - Font Awesome 中文网这一网站的,有想用的图标直接在fontawesome上面找图标的名称就行。resources是我自己添加的。
新添加的菜单需要翻译对应的中文,打开theme/next/languages/zh-CN.yml,在menu下设置:
1 | menu: |
在根目录下打开Git Bash,输入如下代码:
1 | hexo new page "categories" |
此时在根目录的sources文件夹下会生成categories、tags、about、resources四个文件,每个文件中有一个index.md文件,修改内容分别如下:
1 | --- |
注:如果有启用评论,默认页面带有评论。需要关闭的话,添加字段comments并将值设置为false。
设置建站时间
打开主题配置文件即themes/next下的_config.yml,查找since:
1 | footer: |
设置头像
打开主题配置文件即themes/next下的_config.yml,查找avatar,url后是图片的链接地址:
1 | # Sidebar Avatar |
然后将你要的头像图片复制到themes/next/source/images里,重命名为avatar.jpg。
网站图标设置
我是在这个网站找的图标,免费的图标素材网站:Easyicon
下载16x16和32x32的图标后,打开主题配置文件,查找favicon,只要修改small和medium为你的图标路径:
1 | favicon: |
设置动态背景
canvas nest 风格
在themes/next目录下打开Git Bash,输入:
1 | git clone https://github.com/theme-next/theme-next-canvas-nest source/lib/canvas-nest |
打开主题配置文件即themes/next下的_config.yml,找到canvas-nest,将enable:false改为true:(如果找不到canvas-nest,可能是文件修改了,试试将下面的代码复制粘贴到themes/next中)
1 | # Canvas-nest |
JavaScript 3D library风格
在themes/next目录下打开Git Bash,输入:
1 | git clone https://github.com/theme-next/theme-next-three source/lib/three |
打开主题配置文件即themes/next下的_config.yml,找到three,这里有三种风格,可以试一下看看喜欢哪种风格,直接将false改为true就行了,我已经选了canvas-nest,就没有选这种风格:
1 | # JavaScript 3D library. |
设置背景图片
打开主题配置文件即themes/next下的_config.yml,将 style: source/_data/styles.styl 取消注释:
1 | custom_file_path: |
打开根目录Blog/source创建文件_data/styles.styl,添加以下内容:
1 | // 添加背景图片 |
然后将想要的背景图片放入 themes/next/source/images即可。
主页文章添加阴影效果
打开themes/next/source/css/_common/components/post/post.styl,修改.post-block,如下:
1 | .use-motion { |
还有一种方法打开Blog/source/_date/style.styl文件,添加以下代码:
1 | // 主页文章添加阴影效果 |
添加顶部加载条
在themes/next目录下打开Git Bash,输入:
1 | git clone https://github.com/theme-next/theme-next-pace source/lib/pace |
打开主题配置文件即themes/next下的_config.yml,找到pace,将enable:false改为true,你还可以选择类型(theme):
1 | pace: |
设置预览摘要
next(v7.7.1)已经没有如下代码:
1 | auto_excerpt: |
所以不需要设置,只要我们在文章中插入 <!– more –>,该标签之上的是摘要,之后的内容不可见,需点击全文阅读按钮:
1 | <!-- more --> |
设置侧边栏显示效果
打开主题配置文件即themes/next下的_config.yml,找到Sidebar Settings,设置:
1 | sidebar: |
侧边栏推荐阅读
打开主题配置文件即themes/next下的_config.yml,搜索links(里面写你想要的链接):
1 | links_settings: |
添加社交链接
打开主题配置文件即themes/next下的_config.yml,搜索social:
1 | social: |
“||”前面的是链接,后面的是 FontAwesome图标名称。
设置博文内链接为蓝色
打开themes/next/source/css/_common/components/post/post.styl文件,将下面的代码复制到文件最后:
1 | .post-body p a{ |
显示文章字数和阅读时长(有问题)
从根目录Blog打开Git Bash,执行下面的命令,安装插件:
1 | npm install hexo-wordcount --save |
然后打开站点配置文件,在文件末尾加上下面的代码:
1 | symbols_count_time: |
显示站点文章总字数(另一种统计站点总字数的方法)
从根目录Blog打开Git Bash,执行下面的命令,安装插件:
1 | npm install hexo-wordcount --save |
然后在/themes/next/layout/_partials/footer.swig文件尾部加上:
1 | <div class="theme-info"> |
设置文章末尾”本文结束”标记
在路径/themes/next/layout/_macro 中新建 passage-end-tag.swig 文件,并添加以下内容:
1 | <div> |
接着打开/themes/next/layout/_macro/post.swig文件,在post-footer前添加代码:
1 | {% if not is_index and theme.passage_end_tag.enabled %} |
具体位置如下图:
然后打开主题配置文件(_config.yml),在末尾添加:
1 | # 文章末尾添加“本文结束”标记 |
文章末尾添加版权说明
查找主题配置文件themes/next/_config.yml中的creative_commons:
1 | creative_commons: |
添加访问量统计
打开主题配置文件即themes/next下的_config.yml,找到busuanzi_count,改为true:
1 | busuanzi_count: |
打开/themes/next/layout/_partials/footer.swig,在最后添加如下内容:
1 | {% if theme.busuanzi_count.enable %} |
添加评论功能
注册安装
我采用的是来必力,具体过程很简单,打开官网:Welcome to LiveRe.com注册账号
然后发送邮箱验证码,输入验证码验证,完成注册后点击上方安装:
选择免费的现在安装,会弹出一个框让你填网站的信息:
然后获取代码:
将data-uid后的代码复制,然后打开主题配置文件_config.yml,找到livere_uid,将代码复制到其后即可:
1 | livere_uid: "你的代码" |
设置提醒
当有新评论出现时,通过邮箱提醒,点击右上角->管理页面->评论提醒:
添加Fork me on Github
有两种,分别是:

选择你喜欢的类型,打开小猫或者字,复制代码添加到themes/next/layout/_layout.swig文件中,放在<div class=”headband”></div>后面:
1 | <div class="headband"></div> |
安装Markdown编译器
可以看这篇文章然后选一个适合的文本编译器:几款主流好用的markdown编辑器介绍
我是用的Windows系统,所以我用的是MarkdownPad2,下载地址:The Markdown Editor for Windows,默认安装就行
如果是win10系统还需要安装一个组件 awesomium_v1.6.6_sdk_win,下载链接:链接:https://pan.baidu.com/s/1UJRtOBF8vj19ikOq4452sQ 提取码:yd8k
下载完awesomium_v1.6.6_sdk_win默认安装就行
安装RSS插件
为什么要安装RSS插件呢?不了解的可以看看这篇文章:rss订阅是什么意思?为什么要使用RSS?简单来说,RSS是一种协议,允许网站将其内容或其部分内容提供给其他网站或应用程序。通过使用RSS,可以节省宝贵的时间,并将各个站点提供的新闻和信息组织到一个中心点进行查看,也可以通过从使用RSS联合其内容的其他站点导入新闻来向你的站点添加新闻。
安装hexo-generator-feed插件:
RSS需要有一个Feed链接,而这个链接需要靠hexo-generator-feed插件来生成,所以第一步需要添加插件,在Blog根目录打开Git Bash执行安装指令:
1 | npm install hexo-generator-feed --save |
配置feed信息:
在站点配置文件末尾加上如下代码:
1 | feed: |
打开主题配置文件,搜索rss,将前面的#去掉:
1 | follow_me: |
项目主页添加README
忽略要编译的文件
搜索引擎确认网站所有权时往往会提供一个html文件来进行验证,要是这个文件被渲染了,验证自然就会失败了。或者,有时候会有一些文件不希望Hexo渲染的,因此有必要针对某个文件或者目录进行排除。Hexo的配置文件中提供了配置项skip_render。只有source目录下的文件才会发布到public(能够在网络上访问到),因此Hexo只渲染source目录下的文件。skip_render参数设置的路径是相对于source目录的路径。
1 | skip_render: #部署时不包含的文件 |
代码块样式自定义
打开根目录Blog/source/_data/styles.styl,添加以下内容:
1 | // Custom styles. |
支持mathjax公式
打开主题配置文件,搜索mathjax:
1 | mathjax: |
图床网站
推荐七牛云,免费网站,快速,方便,或者可以看看这篇文章选一个合适的网站:软件小编:盘点一下免费好用的图床
网站:七牛云,后面我再写一篇关于如何注册使用七牛云存储图片的文章吧,我先研究研究。
本地搜索
打开cmd安装插件:
1 | npm install hexo-generator-search |
查找主题配置文件themes/next/_config.yml中的local_search
1 | local_search: |
Hexo博客提交百度和Google收录
这篇文章写得很详细:Hexo博客提交百度和Google收录
博文置顶
安装插件
在根目录Blog打开Git Bash,执行下面的命令:
1 | npm uninstall hexo-generator-index --save |
设置置顶标志
打开blog/themes/next/layout/_macro目录下的post.swig文件,定位到<div class=”post-meta”>标签下,插入如下代码:
1 | {% if post.top %} |
在文章中添加top
然后在需要置顶的文章的Front-matter中加上top: true即可,如下:
1 | --- |
添加打赏
添加分享(未完成)
图片可点击放大查看,放大后可关闭(fancybox可能有点问题,暂时未实现)
参考
主题 | Hexo
从零开始搭建个人博客(超详细)
Hexo-NexT 设置博客背景图片 - 锦瑟,无端 - 博客园 (cnblogs.com)
关于我使用obsidian加hexo部署个人博客的过程 - SagiRastar’s Blog (sagi-rastar.github.io)
Hexo+Next主题搭建个人博客+优化全过程(完整详细版) - 知乎 (zhihu.com)
Hexo 博客美化合集(不断更新) - 知乎 (zhihu.com)
- 标题: 从零开始搭建个人博客
- 作者: 迟秋白
- 创建于 : 2024-01-21 18:31:58
- 更新于 : 2025-05-04 18:03:30
- 链接: https://chiqiubai.cn/2024/01/21/从零开始搭建个人博客/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。