Hexo

发表于 2016-09-28   |   分类于 笔记

介绍

以下将详细介绍使用GitHub Pages和Hexo搭建免费独立博客的教程。你可以不需要服务器,完全免费地搭建出一个强大而漂亮的独立个人博客,甚至是公司网站。即便你是0基础,只要照做也能搞定。因为个人用的是Mac所以以下只是针对Mac OSX下的过程记录。

什么是Hexo

Hexo是快速、简洁且高效的博客框架;依靠Node.js 所带来的超快生成速度,让上百个页面在几秒内瞬间完成渲染。
Hexo 支持 GitHub Flavored Markdown 的所有功能,甚至可以整合 Octopress 的大多数插件。
只需一条指令即可部署到 GitHub Pages, Heroku 或其他网站。
Hexo 拥有强大的插件系统,安装插件可以让 Hexo 支持 Jade, CoffeeScript。

总之,Hexo是目前最高逼格的博客系统

关于GitHub Pages

首先,默认你已经知道Git和Github如果不知道,请自行Google; GitHub Pages是GitHub提供的免费网页服务。

GitHub Pages仓库建立

到github.com注册账号

请记住你的用户名,废话是吧,很重要

新建一个仓库

点击Repositories,NEW,新建一个仓库,仓库名为点击 username.github.io(username为你的用户名,重要!)

本地安装配置Git

建议使用brew来安装

安装brew

在终端输入:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

回车,即可安装brew。

安装Git

brew install git

为Mac授权GitHub的加密授权

生成授权码,在终端输入:

ssh-keygen -t rsa -C "email"

email 是你注册github是的邮箱。
之后直接回车,不用填写东西。之后会让你输入密码。然后就生成一个目录.ssh ,里面有两个文件:id_rsa , id_rsa.pub

打开id_rsa.pub复制里面的内容,粘贴到GitHub里面的SSH keys里面(怎么找?点击EditProfile/SSH and GPG keys/SSH keys/New SSH Key)。

测试命令:ssh -T git@github.com
如果看到:

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

说明已成功

配置git

git config --global user.name "sunhuablog"
git config --global user.email "33270652@qq.com"

本地安装配置Hexo

安装node环境

brew install node

安装Hexo

npm install hexo-cli -g

安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。

hexo init <folder>
cd <folder>
npm install

folder是Hexo程序所在路径,如我的是sunhua/hexo

新建完成后,指定文件夹的目录如下:

.
├── _config.yml
├── package.json
├── scaffolds
├── source
|   ├── _drafts
|   └── _posts
└── themes

配置Hexo

下面编辑 _config.yml

# Deployment
## Docs: http://hexo.io/docs/deployment.html
deploy:
  type:

修改为:

deploy:
  type: git
  repo: 对应仓库的SSH地址(如我的是:git@github.com:sunhuablog/sunhuablog.github.io.git)
  branch: 分支(一般为master)

使Hexo部署到GitHub上

npm install hexo-deployer-git --save

然后,执行下列指令即可完成部署:

hexo g -d

然后打开,username.github.io进行浏览,恭喜,你已经成功了。
此后,当你更新了一些内容后,执行hexo g -d即可。

配置独立域名

在库里新建一个CNAME文件,没有后缀名,内容是你要绑定的域名,如我的是sunhua.me
另外,在DNS管理里添加cname记录指向你的github pages地址即可。

© 2017 Powered by Typecho & Theme Quark