前言
Hexo是一个基于 node.js的快速生成静态博客的开源框架,支持 Markdown和大多数 Octopress插件,一个命令即可部署到 Github页面、 Giteee、 Heroku等,强大的APl,可无限扩展,拥有数百个主题和插件。
本文仅对于windows下搭建blog
一 、环境准备
1、Github
注册GitHub账号
2、Node.js
Node.js官网:下载 | Node.js (nodejs.org)
(Node.js自带npm)
3、Git
git官网:Git - Downloads (git-scm.com)
二、绑定GitHub
为什么要绑定GitHub呢?就是为了方便我们上传文件。在这里我们利用SSH来完成GitHub的绑定并提交文件
1 | SSH(安全外壳协议,Secure Shell 的缩写)是建立在应用层基础上的安全协议。 |
如果想详细了解的话,可以看这篇文章:详述 SSH 的原理及其应用
1、绑定ssh
开始我们要用git上传文件到GitHub首先得利用SSH登录远程主机,而登录方式有两种:一种是口令登录,另一种是公钥登录。口令登录每次都要输入密码十分麻烦,而公钥登录就省去了输入密码的步骤,所以我们选择公钥授权。首先我们得在 GitHub 上添加 SSH key 配置,要想生成SSH key,就要先安装 SSH,不过我们安装了 Git Bash,其自带了 SSH。检验一下是否安装 SSH,我们打开 Git Bash:键入ssh
检查本机是否安装ssh
如图,即已经成功安装了ssh,然后键入ssh-keygen -t rsa -C "xxxxx@xxx.com"
命令
1 | `ssh-keygen` |
我们选择RSA算法生成密钥,然后一直敲三到四次回车(要求设密码,我们不管,那样很麻烦),Windows系统中,C:/Users/用户/.ssh
下会生成秘钥 id_rsa 和公钥 id_rsa.pub
1 | `SSH Key的秘钥对:id_rsa是私钥,不能泄露;id_rsa.pub是公钥,可以公开。` |
我们用记事本打开id_rsa.pub,复制里面的内容,或者直接在git上面打开cd ~/.ssh
ls
cat id_rsa.pub
接下来我们进入Github,点击右上角,然后打开settings
在左边找到SSH and GPG keys,打开后点击绿色的New SSH key,将复制的公钥 id_rsa.pub 的内容粘贴到 key 内,title填不填都可以,主要用于区分不同的公钥,最后再点击 Add SSH key
我们在git中键入ssh -T git@github.com
进行验证,第一次通常需要键入yes
2、创建仓库
在GitHub主页点击绿色的new,创建一个新的仓库,仓库名称一定要为昵称.github.io
(如:Mazeaaa.github.io),并设为Public
三、安装hexo
1、安装
我们先在D盘创建一个文件夹blog,打开blog文件夹
鼠标右键打开Open Git Bush here,键入npm命令安装hexonpm install -g hexo-cli
安装完成后,输入hexo init
命令初始化博客,然后hexo g
静态部署
此时网页已经部署完毕,我们先输入hexo s
命令查看
浏览器输入 http://localhost:4000
就可以打开新部署好的网页
看完后在git用CTRL+C停止运行
2、部署到GitHub
进入GitHub,打开刚才创建的仓库,点击右上方绿色的Code,复制HTTPS中的内容
接下来打开blog文件夹,用记事本打开_config.yml文件
滑到最下面,修改以下内容,注意每个冒号后面都有一个空格
1 | # Deployment |
我们在blog文件夹里打开git,安装git部署插件,输入npm install hexo-deployer-git --save
然后分别输入下面三条命令
1 | hexo clean #清除缓存文件 db.json 和已生成的静态文件 public |
如果第三条命令报错,则使用魔法后重新输入命令
完成以后,打开浏览器,输入https://xxx.github.io
即可打开你的网页
我们会发现这个网址是由GitHub提供,如果想要一定程度自定义域名,可以通过购买来实现,需要我们解析域名和绑定域名