准备工作
在开始第二部分的部署前,你需要有如下准备:
github
和gitee
仓库- 静态网页开放仓库
[username].github.io
和[username].gitee.io
- 本地的
hexo-blog
源码仓库 - 一个已经备案的域名
静态网页开放仓库配置
github
上配置静态网页开放仓库
- 在
github
官网上新建一个public
仓库[username].github.io
- 将新仓库地址的
ssh
地址复制下来如:git@github.com:[username]/[username].github.io.git
- 开启
pages
服务
gitee
上配置静态网页开放仓库
- 在
gitee
官网上新建一个public
仓库[username].gitee.io
- 将新仓库地址的
ssh
地址复制下来如:git@gitee.com:[username]/[username].gitee.io.git
- 开启
pages
服务
本地hexo-blog
仓库的配置
打开hexo
的_config.yml
配置文件添加如下配置
此处的[username]
替换成你的用户名,repo
处的仓库地址必须使用ssh
格式的。
xxx.xxx
替换成你的域名或云服务器的IP
地址,你的域名需能解析到自己的云服务器上。
1 | deploy: |
配置start
和release
命令
打开hexo
的package.json
文件添加如下配置
1 | "scripts": { |
更改pages
服务为自己网站域名
在自己的域名下添加DNS
解析
记录类型 | 主机记录 | 记录值 |
---|---|---|
CNAME | blog | [uername].github.io 或者[uername].gitee.io |
A | @ | xxx.xxx.xxx.xxx 填自己云服务器的IP 地址 |
A | www | xxx.xxx.xxx.xxx 填自己云服务器的IP 地址 |
在本地hexo-blog
仓库中的source
文件夹下新建一个文件CNAME
。
这样做可以防止重新部署后CNAME
文件丢失导致404
的发生,CNAME
文件配置如下:
1 | blog.xxx.xxx #xxx.xxx替换成你的域名 |
现在可以使用npm run release
命令一键部署云服务器和github
、gitee
的pages
上。
查看部署的blog.xxx.xxx
、www.xxx.xxx
、xxx.xxx
网站。