mac下使用hexo搭建blog

安装 nvm(Node Version Manager)

Terminal中运行

1
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash 

v0.33.8 是nvm的版本号,最新版本详见:

1
https://github.com/creationix/nvm/blob/master/README.md

安装完成后会提示

1
=> Close and reopen your terminal to start using NVM

重启 terminal,输入 nvm 验证是否安装成功, 当一行出现 Node Version Manager 时说明安装成功

使用 nvm 安装 note.js

1
$ nvm install stable

安装完成后安装 hexo,这一步时间稍微比较长:

1
$ npm install -g -hexo

然后选择一个文件路径创建一个文件夹:

1
2
3
4
$ mkdir Blog
$ cd Blog
$ hexo init .
$ ls

如果遇到 hexo: command not found 的错误, 解决方法如下:

1
$ nvm ls

log信息如下:

       v0.10.48
->      v12.6.0
default -> v12.6.0
node -> stable (-> v12.6.0) (default)
stable -> 12.6 (-> v12.6.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/dubnium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.0 (-> N/A)
lts/dubnium -> v10.16.0 (-> N/A)

选择使用版本:

1
2
$ nvm use v12.6.0
$ nvm alias default v12.6.0

生成出的目录结构:

.
├── _config.yml
├── package.json
├── db.json
├── package-lock.json
├── node_modules
├── scaffolds
├── public
├── source
|   └── _posts
└── themes

新建一篇文章

1
2
$ hexo new mac下使用hexo搭建blog
$ open source/_posts/mac下使用hexo搭建blog.md

编辑完成后生成html

1
$ hexo generate

本地预览

1
2
$ hexo server
=> [info] Hexo is running at localhost:4000/. Press Ctrl+C to stop.

Theme,去官方提供的主题列表中选个现成的,按照里面的方法pull下来,如light主题

1
$ git clone git://github.com/tommy351/hexo-theme-light.git themes/light

_config.yml 配置文件中设置:

1
theme: light

重新generate和server预览,就看到变化了。

deploy

在 github 上创建一个 respository

_config.yml 中配置:

1
2
3
deploy:
type: git
repository: https://github.com/pikacool1993/pikacool1993.github.io.git

然后执行

1
2
$ hexo generate
$ hexo deploy

以下提示说明部署成功

1
INFO  Deploy done: git

若出现错误

1
ERROR Deployer not found: git

执行

1
$ npm install hexo-deployer-git --save

绑定域名

在万网买了个域名 pikacool.cn, 然后将独立域名与GitHub Pages的空间绑定

在Blog站点 public 目录下创建一个名为CNAME的文本文件,并写入你要绑定的域名 pikacool.cn

提交到github上去

1
2
$ hexo generate
$ hexo deploy

域名后台解析设置中添加记录,DNS域名解析最常用的是A记录和CNAME记录,A记录把域名解析到服务器IP,CNAME相当于把一个域名指向另一个域名,因此我这个用的是CNAME,要是托管的服务器也是自己搭的那就用A记录了。

添加一个 A 记录

记录类型:A
主机记录:@
解析线路:默认
记录值:创建的GitHub respository ip地址( ping 一下就看到了) 如:185.199.109.153

添加一个 CNAME 记录

记录类型:CNAME
主机记录:www
解析线路:默认
记录值:pikacool1993.github.io

使用下面的命令测一下域名的解析

1
2
3
4
5
6
7
$ dig pikacool.cn +nostats +nocomments +nocmd

output =>:
; <<>> DiG 9.10.6 <<>> pikacool.cn +nostats +nocomments +nocmd
;; global options: +cmd
;pikacool.cn. IN A
pikacool.cn. 60 IN A 185.199.109.153

安装插件

添加sitemap

使用hexo提供的插件,安装sitemap到本地:

1
$ npm install hexo-generator-sitemap

开启sitemap功能:编辑hexo/_config.yml,添加如下代码:

1
2
3
plugins:
- hexo-generator-sitemap

访问zipperary/sitemap.xml即可看到站点地图。

图床

白嫖网站

top