前言
如首篇文章所说的,在很久之前我就想搭建自己的个人博客网站,以前在 csdn 的博客不知道为啥就被封禁了,懒得去申诉了。我也有想过自己开发一个,但是奈何审美水平不高,做一个好的前端页面自觉要花费很多功夫,搭建完成之后还要购买服务器来进行维护,都是比较耗费尽力的,后来找了一轮相关的资料,就找到 Hexo 这个博客的框架。觉得各方面都比较符合我的期望,下面会做一些入门的介绍。
什么是Hexo
Hexo 是是一个快速、简洁且高效的静态博客框架,基于 Node.js 渲染,支持 Markdown 语法且能通过命令行一键部署到 github、heroku、coding 等网站。拥有免费且丰富的主题和插件,可以让你轻松定制你的博客网站。还阿提供了方便的命令行工具,可以帮助你快速搭建、生成和部署你的博客网站。此外文章的本体可以留存在本地备份随时修改。这一点是我比较喜欢的。
Github: https://github.com/hexojs/hexo
优点和不足
Hexo 的优点如下:
免费;轻量
基于 Node.js,易于安装和使用。
支持 Markdown 语法,使写作更加简单。
提供丰富的插件和主题,让你可以轻松定制你的博客。
提供方便的命令行工具,可以快速搭建、生成和部署你的博客网站。
原文内容在本地,迁移方便;
Hexo 的缺点如下:
- 依赖本地环境,不太适用于不同设备上随心发布;
- 只支持静态网站,不支持动态网站。
- 对于复杂的网站,可能不太适用。
- 在某些情况下,它的性能可能不如其他静态网站生成器。
- 相对于其他类似工具,它的社区支持可能不太完善。
安装前置环境
安装前提:
Github | Gitee| Coding :资源/代码存放的仓库,目前他们均提供了相关的 pages —— 一种免费的静态站点托管服务,让我们可以在仓库里托管和发布自己的静态网站页面。
Nodejs :Hexo 是基于 Node.js 平台开发的,所以你需要先安装 Node.js。(Node 各系统安装教程:【NODE】NODE.JS 安装配置(转)) ,建议使用 Node.js 12.0 及以上版本
Git:Hexo 使用 Git 来管理项目,将本地的 Hexo 内容提交到 Github 上去
如果你没有安装这些前置环境,建议你参阅官方文档,了解如何在你的系统上安装这些软件。
准备 Github Pages 仓库
注册Github帐号
已经有Github帐号跳过此步,首先进入Github进行注册,用户名、邮箱和密码之后都需要用到,自己记好。
在 Shell 中本地全局设置用户名和邮箱
1 | git config --global user.name "GitHub 用户名" |
创建 SSH 密钥
在 Shell 中运行以下命令并多次回车
1 | ssh-keygen -t rsa -C "Github 邮箱" |
然后键入以下指令:
1 | ssh-agent -s |
出现echo Agent pid xxxxx; 继续输入指令:
1 | ssh-add ~/.ssh/id_rsa |
如果提示错误:Could not open a connection to your authentication agent.则输入以下指令:
1 | eval 'ssh-agent -s' |
会出现如:Identity added: /c/Users/用户/.ssh/id_rsa (/c/users/用户/.ssh/id_rsa)
到了这一步,就可以添加SSH key到你的Github账户了。输入以下指令,拷贝Key(或者进入 [C:\Users\用户名.ssh] 目录(要勾选显示“隐藏的项目”),用记事本打开公钥 id_rsa.pub 文件并复制里面的内容。):
1 | clip < ~/.ssh/id_rsa.pub |
然后到Github里面,点击右上角个人头像——Settings,在左边菜单栏找到SSH and GPG keys,点击New SSH key,Title 随便命名,Key就粘贴上刚才复制的key,然后点Add SSH key,最后会让你重新输入下gitHub的密码即可
添加完成之后在自己电脑上执行 shell 命令进行测试
1 | ssh -T git@github.com |
可能会看到有警告,没事,输入“yes”就好
出现类似:Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.就表示SSH配置好了
创建repository
repository相当于一个仓库,用来放置你的代码文件。首先,登陆进入Github,并进入个人页面——右上角自己的头像 —— Your repositories,然后选择Repositories,点击New,新建一个repository
创建时,只需要填写Repository name即可,这个名字的格式必须为 [你的github名称].github.io,例如我的为biuhe.github.io,点击Create repository 即可创建
安装 Hexo
安装好 Node 之后,输入安装 hexo 命令:
1 | npm install -g hexo |
安装完成后,在自己选定的文件夹下(如 D:\Hexo),执行以下指令
1 | hexo init <blog-name> |
Hexo 会进行初始化,在目标文件夹建立博客所需要的文件,随后我们安装依赖包:
1 | npm install |
就已经安装好了,我们可以通过 hexo help (或者 hexo h )来查看 hexo 支持的命令
以下为常用命令:
1 | hexo help # 帮助 |
你可以使用以下命令启动本地服务器,浏览并预览你的博客:
1 | hexo s |
然后用浏览器访问 http://localhost:4000 就可以在本地预览到博客内容了,hexo3.0使用的默认主题是landscape。
如果页面无法加载可能是端口被占用了,可以先在刚才命令窗口Ctrl+C 关闭服务器,使用 hexo server -p 端口号 ,如hexo server -p 5000 指定运行端口为 5000, 然后通过 http://localhost:5000进行访问
Hexo 博客目录文件结构如下:
1 | . |
部署github
编辑刚才创建的hexo目录下的 _config.yml 文件,在 _config.yml 最下方,添加如下配置(命令中的第一个biuhe为Github的用户名,第二个biuhe为之前New的Repository的名字,记得改成自己的。另外记得一点,hexo的配置文件中任何冒号后面都是带一个空格的,否则会出现异常:ERROR Deployer not found : github)
详细可参考:https://hexo.io/docs/one-command-deployment
1 | deploy: |
配置 _config.yml并保存,执行以下命令部署到Github上。
首选生成静态网页。如果你想要将你的博客部署到网站上,你需要生成静态网页。你可以使用以下命令生成静态网页
1 | hexo g |
在通过 deploy命令部署到网站
1 | hexo d |
如果执行hexo d命令报下名错:ERROR Deployer not found: git
就需要安装一下 hexo-deployer-git 这个模块:
1 | npm install hexo-deployer-git --save |
安装好了继续执行hexo d部署命令,输入 github 的账号密码,就可以访问了。我的是: biuhe.github.io
发表一篇文章
1.在Git Bash执行命令:
1 | hexo new "my new post" |
2.在创建的hexo目录下source/_posts 文件中打开 my-new-post.md
1 | title: my new post #可以改成中文的,如“新文章” |
写完文章后,你可以使用
hexo g生成静态文件。hexo s在本地预览效果hexo d同步到 github,然后使用http://github用户名.github.io 进行访问
总结
到这里,就算初步搭好了一个属于自己的独立博客,后续就是本地写文章然后部署最后发布就行。当然这只是最基本的流程,hexo提供了许多好看的主题,后续会进行讲解。
参考
本文摘自:嘟嘟独立
官方中文文档:https://hexo.io/zh-cn/docs/


