基于Hexo+Github搭建个人博客的过程

Hexo初步配置

什么是Hexo

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

Hexo的优点

  • Hexo是一款基于Node.js的静态博客框架,依赖少且易于安装,可以很方便生成静态网页托管在Github上。

  • Node.js所带来的超快生成速度,渲染网页速度非常快。

  • Hexo支持Makedown所有功能,书写非常方便。

  • 部署非常方便,只需一条指令就可以部署到Github Pages上。

  • 拥有丰富的插件和主题,选择面比较大。

  • 由于创始人是台湾人,所以对中文非常友好。

Hexo的缺点

  • 功能仍不够丰富,比如评论功能,计数功能和搜索功能等都只能借助第三方服务提供。
  • 环境搭建大部分在本地运行,脱离了搭建环境的电脑,发布文章几乎不太可能。

总的来说,Hexo提供了一个很好平台,它能把makedown语言编写的内容编译成html静态页面。自己本身非常简介,功能纯粹,它从一出现就深受一些极客博主喜欢。搭建过程也相对简单,适合刚接触新手用户,因此我也选择Hexo搭建博客。

下面记录一些自己的搭建过程以及所遇到的坑。

Github创建个人仓库

所建的仓库名必须规定为{your username}.github.io,是GitHub Page的一个特定规范,每个用户名下面只能建立一个。这样我们的博客在本地运行没有问题时,就可以部署到外网去,而我们之前创建的Github Page就可以让我们访问静态页面,而Hexo生成恰恰就是静态页面。

安装Node.js

Hexo是基于Node.js(一种JavaScript的运行环境,使得JavaScript脱离浏览器运行。下面这篇文章是对我的Node.js的学习->传送门),下载地址是Download | Node.js,安装Node.js同时也会把npm(Nodej.js中的包管理工具)给安装,检验安装方法是

node -v
nmp -v

安装Hexo

使用nmp命令安装Hexo
npm install -g hexo-cli

安装完成之后,就可以初始化博客了

hexo init bolg

Hexo与Hexo-cli的关系
刚开始我们输入的命令是下载H、hexo-cli,是命令行,安装之后就可以创建hexo项目了。
生成项目之后,项目里面依赖的模块就是hexo模块。
hexo-cli,负责创建hexo过程,创建工程之后,此时hexo-cli就把接力棒给了hexo。
hexo模块,负责真正的项目管理工作(生成静态页面、预览等)

接着就可以测试我们的网站雏形了,依次输入以下命令

hexo new myfirstsite

hexo g

hexo s

然后就可以在本地查看网站了

localhost:4000

Hexo常见命令

hexo n “我的博客” == hexo new “我的博客” #新建文章
hexo g == hexo generate #生成
hexo s == hexo server #启动服务预览
hexo d == hexo deploy #部署

hexo server #Hexo会监视文件变动并自动更新,无须重启服务器
hexo server -s #静态模式
hexo server -p 5000 #更改端口
hexo server -i 192.168.1.1 #自定义 IP
hexo clean #清除缓存,若是网页正常情况下可以忽略这条命令

推送网站

本地预览没有问题之后,就可以部署到外网了,让我们的网站可以被更多人的访问。下一步将我们的Hexo和Github关联起来,修改_config.yml文件末尾的Deployment部分,修改成如下

1
2
3
4
deploy:
type: git
repository: git@github.com:用户名/用户名.github.io.git
branch: master

这个过程是给hexo d这个命令做相应的配置,让hexo知道我们要把blog部署到哪个位置,我们要部署的地方就是我们GitHub中仓库里。然后再安装Git部署工具,输入命令

npm install hexo-deployer-git --save

安装之后我们再输入

hexo g -d 先生成再部署我们的网站

这样我们就可以在访问我们的个人网站了,即xxxx.github.io。

发布文章

在博客所在目录中输入命令

hexo new “My New Page"

source文件中就会出现My New Page.md文件。在md中编写文章的内容即可。

ReadMore的使用

在文章摘要下面输入

<! -- more-->

Hexo个性设置

更换主题

hexo可以选择各种各样的主题,我选择了next主题。命令是

git clone https://github.com/iissnan/hexo-theme-next themes/next

安装之后先在博客的_config.yml配置文件中,修改主题为next

同时next主题有四种选择样式,在主题的_config.yml中的Scheme选择喜欢的样式(只需要把#给去除即可,#是注释)

网站设置

基本信息

在博客的配置文件中可以修改网站的基本信息

背景图片

blog\themes\next\source\css_custom文件的custom.styl首部添加:

1
2
3
4
5
6
7
body {
background:url(http://i2.tiimg.com/696395/0246751f2f7c448c.png);
background-size:cover;
background-repeat: no-repeat;
background-attachment: fixed;
background-position: 50% 50%;
}

参考网站

[1] https://hexo.io/zh-cn/

[2] https://zhuanlan.zhihu.com/p/60578464

[3] https://zhuanlan.zhihu.com/p/26625249

[4] Hexo 与 Hexo-cli 的关系、入门教程