博客搭建记录|教程
前言
首先介绍搭建博客需要使用的东西:Nodejs是一个Javascript运行环境,作为底层架构在本例中实现构建和生成静态网站;Git,是分布式版本控制系统,用于将本地的资源文件上传到服务器端;Github应该不陌生了,全世界最大的程序员交流网站,它同时免费提供静态网站的服务器。
- Nodejs
- Git
- Github账号
- 文本编辑器(如vscode、Typora)
- 一个域名(可选)
- CDN加速(可选)
环境搭建
Nodejs
安装Nodejs
在官方下载地址中选择适合自己系统的版本下载安装即可。
在cmd中输入该命令查看版本号,成功返回版本号即代表安装完毕。
如提示找不到命令,请尝试把nodejs放入系统path中,或在B站、CSDN中查找教程进行卸载重装。
1 node -vNodejs自带的包管理工具——npm
在这里,我介绍一下npm(Node Package Manager),它是一个用于管理和共享 JavaScript 包的包管理器,我们使用它来向中央服务器发出请求下载某个模块(比如本文的建站Hexo模块),有Python基础的同学应该会立即联想到Python的pip指令,你的直觉没错的,但仍存在一个主要区别,npm 不仅仅用于管理 JavaScript 包,还用于管理其他前端资源,如样式表、图像、字体等。
npm的中央服务器是架设在国外的,较慢的访问速度不利于我们安装、学习相关模块,可使用以下指令将默认的中央服务器切换为国内的淘宝镜像源。
1 | npm config set registry https://registry.npm.taobao.org/ |
Git
官方下载地址
同样是选择合适的版本下载安装即可,具体的安装步骤本文不赘述。
同样使用查看版本号的指令检查是否安装好
1 | git --version |
安装Hexo
使用npm指令安装
使用管理员身份打开Git bash
在Git bash中键入:
1 | npm install -g hexo-cli |
安装部署插件
1 | npm install hexo-deployer-git --save |
其中,可选参数save代表将此插件添加到依赖路径,即执行npm install时,自动安装
配置Github仓库
我们需要在Github注册一个账号,官方网址。
在个人仓库中创建一个名为“yourname.github.io”的仓库,在仓库中点击“CODE”下拉,可以获得登入仓库的ssh链接:
打开博客目录下名字为“_config.yml”的配置文件,拉到最底,会有这样的代码

- type指我们上传的方式,填git
- repository意为仓库,指要上传的目的地,这里填入你自己仓库的ssh链接
- branch指分支,即仓库中不同的划分区域,我们填main就好
Git关联Github
1 | git config --global user.name "你的github账户名" |
通过这两行代码,本地git就能通过你的账户名与邮箱在网络上确定你目标服务器的位置,但你并没有提供密码,所以每次你要上传到仓库,都要输入一次密码验证你是仓库的所有者,那有没有类似“记住密码”的功能呢?有的。
在cmd中输入以下指令,生成git密钥
1 | ssh-keygen -t rsa -C "你github所绑定的邮箱" |
生成成功后会给出一个路径,进入该路径其中.pub后缀的就是公钥,另一个为私钥。私钥是你自己持有的,注意保管,而后把公钥内容复制到github->setting->SSH and GPG keys->new SSH key,把公钥粘贴到这里,这样服务器端就可以核验你的身份了。

具体原理参考Chatgpt给出的答案:
1 | SSH 密钥原理主要包括以下几个步骤: |
开始写Blog
初始化Hexo
新建一个博客专属的文件夹,注意名称不要是中文,右键“Git bash here”,即在此处打开命令行,或者在开始菜单打开bash命令行后,使用cd指令进入该文件夹。
使用初始化指令,将在指向的目录中初始化hexo模块,我们的网站也将存在于此。
1 | hexo init |
1 | hexo cl && hexo g && hexo s |
根据访问执行代码后给予的地址即可进行本地访问,如果要把本地的网站上传到github pages服务器,则使用以下代码。
1 | hexo d |
编写文章
使用以下格式指令即可生成markdown格式的文章模板,储存在source文件夹中
1 | hexo new [模板名] <文章名> |
模板的配置文件在scaffolds中,默认自带有post、page、draft
Markdown介绍
Markdown是一种轻量级标记语言,拥有自己的格式,因此它是跨语言,跨平台的。本人推荐使用VSCODE进行编写,VS内置对该语法的支持,支持格式纠错,生成HTML预览,对新人友好。
可在菜鸟教程-Markdown中学习相关语法。
美化介绍
hexo可以很方便的切换主题,笔者推荐两个,喜欢简洁的可以用fluid,喜欢更多个性化配置的可以用butterfly,他们的网址中有很详细的介绍,笔者就不赘述了.