Hexo静态博客网站搭建教程
本文最后更新于 2025年4月22日 下午
要求:作者能够专注于博客内容的写作,简化博客网站的搭建和更新过程。
对本文用到的技术说明如下:
- Node:一个JavaScript的运行环境,其中npm是Node.js的默认包管理器
- Hexo:一个快速、简洁且高效的博客框架,可以使用npm安装Hexo
1 安装Node
1、Node下载链接
1 |
|
2、测试是否安装成功
1 |
|
2 安装Hexo
1、使用npm安装hexo-cli
1 |
|
参数 -g 是global的缩写,这样任何目录下都能直接调用后续的hexo命令
2、初始化
1 |
|
3、安装组件
1 |
|
4、创建文章
1 |
|
在source/_posts
文件夹中会出现一个名为My_Post.md
的文件,编辑该文件并保存
5、生成网页
1 |
|
6、本地预览
1 |
|
本地浏览器访问:http://localhost:4000
生成的网页文件将保存在public
文件夹中,你可以将该文件夹复制到你想要部署的网站服务器上实现在线访问。
3 部署博客到GitHub
3.1 申请仓库
1、登录GitHub
1 |
|
2、新建仓库
在GitHub中选择Create a new repository
仓库名为:<用户名>.github.io,例如:lishan666.github.io
仓库类型选择Public,并勾选Add a README file选项框
3、博客地址
启用的博客地址为:https://<用户名>.github.io
例如:https://lishan666.github.io
3.2 安装Git
1、Git下载链接
1 |
|
2、设置Git参数
1 |
|
例如:
1 |
|
3、生成本地ssh秘钥
1 |
|
参数 -t 表示创建类型,RSA算法是一种常用的非对称加密算法
参数 -C 表示注释,为方便辨识,可将自己的邮箱作为注释信息,但不用邮箱也可以
例如:
1 |
|
输入以上命令后,按下3次Enter键即可成功创建本地公钥id_rsa.pub、本地私钥id_rsa
打开id_rsa.pub文件,复制本地公钥内容
4、GitHub添加本地ssh公钥
(1)登录GitHub,进入 Settings 页面
(2)选择 SSH and GPG keys,点击 New SSH key
(3)粘贴复制的id_rsa.pub内容,点击Add SSH key
5、本地添加GitHub公钥
在本地连接GitHub服务器
1 |
|
根据提示输入yes,将服务器的公钥保存到本地
3.3 发布文章
1、安装hexo-deployer-git
1 |
|
2、修改 _config.yml
1 |
|
例如:
1 |
|
3、更新页面并预览
新建文件后,使用以下命令更新网页,并在本地预览
1 |
|
5、发布本地文章到GitHub
本地预览无误后,使用以下命令发布文章到GitHub
1 |
|
也可以不在本地预览,直接更新并发布到GitHub
1 |
|
3.4 在线访问
现在可以通过浏览器访问:https://<用户名>.github.io访问博客。
例如:https://lishan666.github.io
4 部署博客到Gitee
GitHub在国内的访问速度比较慢,甚至可能无法访问,此时可以选择部署到Gitee上,方法和部署到GitHub上类似。
5 部署博客到云服务器
部署博客到GitHub或Gitee服务器上是完全免费的,且操作相对比较简单,但是你的博客访问地址会很长,且没有个性。此时,部署博客到云服务器也是一种选择。一种推荐的步骤如下:
(1)购买一台云服务器,假设分配给该服务器的公网ip为 1.2.3.4,注意开放80、443等安全组端口
(2)购买一个域名,假设该域名为 bit01.top,解析域名到服务器ip地址
(3)配置ssh密钥,将本地公钥内容追加到云服务器的authorized_keys文件,最终实现ssh免密连接的效果
(4)在云服务器上安装宝塔面板,在面板管理界面中安装Nginx应用,并设置网站的目录,假设目录为/www/hexo
(5)在云服务上初始化一个git仓库文件,假设该文件所在位置为/root/repo/
1 |
|
(6)在git仓库的hooks目录下创建post-receive文件,设置work-tree和git-dir参数
1 |
|
(7)在本地pc的hexo项目中,修改_config.yml中的deploy属性,例如:
1 |
|
特别注意,上述步骤使用了root用户进行操作,基于安全考虑,可以使用普通用户进行操作,但要注意权限问题。
一切就绪后,就可以通过直接访问云服务器的公网ip地址,或访问该云服务器绑定的对应域名在线查看你的网站。
6 完结
博客网站搭建之后,作者后续只需要在souce/_posts
文件夹下新建md文件,然后在文件中创作内容即可
新建博客文章时也可以执行命令:
1 |
|
更新网站时只需要执行命令:
1 |
|
7 插件
在本地typora等软件中显示图片的插件
1 |
|