Hexo博客是一款挺不错的轻量级的博客框架,只是初学者搭建起来还是挺麻烦的,本文就来说下搭建Hexo博客教程,分享下自己踩过的坑。

安装Hexo

1、利用 npm 命令即可安装。在任意位置点击鼠标右键,选择Git Base。

2、输入命令:

npm install -g hexo

注意:-g是指全局安装hexo。

提示错误:

npm WARN engine hexo@3.9.0: wanted: {"node":">=6.9.0"} (current: {"node":"0.12.7","npm":"2.11.3"})​

提示node的版本不够,所以前面提示大家要安装比较新的版本!重新去官网下载然后安装!​

出现第2个问题:

npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.9: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

改成国内的源

npm config set registry https://registry.npm.taobao.org

还不行的话就用切换 NPM 源的方法:

​npm install -g nrm

​然后列出可选的源

nrm ls

npm ---- https://registry.npmjs.org/

cnpm --- http://r.cnpmjs.org/

taobao - http://registry.npm.taobao.org/

eu ----- http://registry.npmjs.eu/

au ----- http://registry.npmjs.org.au/

sl ----- http://npm.strongloop.com/

nj ----- https://registry.nodejitsu.com/

带 * 的是当前使用的源,上面的输出表明当前源是官方源。

切换到taobao

nrm use taobao

Registry has been set to: http://registry.npm.taobao.org/

然后输入

npm install hexo --save

然后看看hexo装上没

hexo -v

看看是不是hexo -v之后显示一样有hexo:版本,如果你的有这行,证明你安装对了,如果你的没有,请看下面解决:

目录是刚刚创建的hexo目录下!即/d/hexo

hexo init

再次查看,仍旧没有hexo:(如果你的有,请略过下面新建文件夹的步骤)

于是,在d盘重新建了一个文件夹HexoBlog,这个文件夹用来写后面需要发布的markdown文件,前面的hexo文件夹就当做安装目录吧!

切换到cd /d/HexoBlog

然后接下来hexo init

成功会显示INFO Start blogging with Hexo!​

创建Hexo文件夹

安装完成后,在你喜爱的文件夹下(如C:\Hexo),执行以下指令(在C:\Hexo内点击鼠标右键,选择Git Bash),Hexo 即会自动在目标文件夹建立网站所需要的所有文件。

hexo init

安装依赖包

npm install

本地查看

现在我们已经搭建起本地的hexo博客了,执行以下命令(在C:\Hexo),然后到浏览器输入localhost:4000看看。

hexo generate

hexo server

注册Github账号

这里不演示了。

创建Repository

创建的时候注意Repository的名字。比如我的Github账号是angelen10,那么我应该创建的Repository的名字是:angelen10.github.io。

修改配置文件

1、到你刚刚创建的Repository下,找到以下内容:

2、先点击HTTPS,然后复制里面的地址。然后编辑_config.yml文件(在C:\Hexo下)。

3、修改文件里面的deploy。其中的repository就改成你刚刚复制的地址。保存这个文件。

设置SSH keys

配置SSH的官方教程是:https://help.github.com/articles/generating-ssh-keys/

1、在Git Bash输入以下指令(任意位置点击鼠标右键),检查是否已经存在了SSH keys。

ls -al ~/.ssh

2、如果不存在就没有关系,如果存在的话,直接删除.ssh文件夹里面所有文件:

3、输入以下指令(邮箱就是你注册Github时候的邮箱)后,回车:

ssh-keygen -t rsa -C "angelen10@163.com"

4、然后它会提示要你输入passphrase(如上图,我没有输入直接回车,如果你输入的话,要记得,到时候会用到)。之后,如果出现类似下图:

5、然后键入以下指令:

ssh-agent -s

6、继续输入指令:

ssh-add ~/.ssh/id_rsa

7、输入之后,在我这里是出错了,不知道你的有没有出错。

8、如果你的也是这样子出错了的话,就输入以下指令:

eval ssh-agent -s

ssh-add

9、到了这一步,就可以添加SSH key到你的Github账户了。键入以下指令,拷贝Key(先拷贝了,等一下可以直接粘贴):

clip < ~/.ssh/id_rsa.pub

10、然后到Github里面,点击右上角的设置图标:

11、在Settings sidebar那里,点击SSH keys:

12、点击Add SSH key:

13、输入Title,作为这个key的描述吧(你可以输入Personal MacBook Air,瞬间高大上)

14、然后这个Key就是刚刚拷贝的,你直接粘贴就好(也可以文本打开以下文件):

15、点击Add Key:

16、输入你的Github密码即可完成SSH Key的添加。嗯,最后还是测试一下吧,键入以下命令:

ssh -T git@github.com

17、你可能会看到有警告,没事,输入“yes”就好。

(一般在添加完公钥之后, 很多人经常会遇到下面这种问题:

“The authenticity of host 'github.com (192.30.252.128)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
Host key verification failed.
fatal: Could not read from remote repository.

Please make sure you have the correct access rightsand the repository exists.”​

说是主机密钥验证失败,其实这是缺少了 known_hosts 文件, 而且必须生成 github.com 的ip执行内容。

输入:ssh git@github.com

然后看到:

The authenticity of host 'github.com (192.30.252.131)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes #这里写 yes
Warning: Permanently added 'github.com,192.30.252.131' (RSA) to the list of known hosts.
Permission denied (publickey)。

然后 .ssh 目录里将是三个文件,这样再连的时候就没事了。)

完成部署

最后一步,快要成功了,键入指令:

hexo generate

hexo deploy

(1、有一些用户在hexo deploy之后会有个这个提示:

那么我们要输入我们在git上验证的邮箱:

如上图!再次hexo deploy,就发布上去了。)

(2、或者还可能遇到报错说:“Warning: Permanently added the RSA host key for IP address '192.30.252.130' to the list of known hosts”​

那么只需要打开你的host文件添加一行“192.30.252.130 github.com”​即可搞定。)

OK,我们的博客就已经完全搭建起来了,在浏览器输入(你的用户名,下面是我的演示):

http://checkfrank.github.io/

注意:每次修改本地文件后,需要键入hexo generate才能保存。每次使用命令时,都要在C:\Hexo目录下。每次想要上传文件到Github时,就应该先键入hexo generate保存之后,再键入hexo deploy。大概成功之后是酱紫的:

对了,记住上图的Username是你的Github账号名称,而不是邮箱;Password就是你的Github的密码。

bugs

1.有网友反应右键菜单中没有 git bash 选项,可以进入开始菜单找到 git bash ,然后通过 cd 进入相应目录执行命令。

2.在github部署完成之后,马上访问可能出现404错误,这是正常的,(最多)等待十分钟左右就可以访问了。如果还不行,那很可能是 github 发送给你的验证邮件你没有打开看,据多方反映,验证后就没问题了。

3.如果在 hexo d 之后出现 fatal: 'username.github.io' does not appear to be a git repository ,一是检查 repo 的名字是否合乎规范、是否含有大写字母、config.yml 中的 deploy 配置是否正确,二是把 git bash 关掉,重新打开再执行命令。

4.有的同学可能不是 IT 界的,或者对shell 命令不太了解。在要求输入密码时,你输入之后密码是不显示的,这是为了安全,并非是你没输上。

5.出现乱码的,不要使用 windows 中的「记事本」打开并编辑文件,推荐使用 sublime text,很简单。如果已经在「记事本」中编辑过,需要使用 sublime text 转码为「utf8」。

6.安装 hexo 时卡在那儿不动,很可能是网络不给力,能全局 break wall 就好了。

7.遇到什么其他的问题,不妨删除.deploy 和db.json 再重新生成试一试。

Tips

hexo现在支持更加简单的命令格式了,比如:

hexo g == hexo generate

hexo d == hexo deploy

hexo s == hexo server

hexo n == hexo new

注意事项

这篇和官方的说法有一点不一样,不过这是亲测成功的哦。

Last modification:November 5, 2022
如果觉得我的文章对你有用,请随意赞赏