hexo部署到Netlify

hexo部署到Netlify

九月 16, 2019

Netlify

我们使用Netlify的静态页面托管服务

实际上GitHub Pages也可以方便地部署,但选择Netlify是因为:

  • GitHub Pages国内访问速度慢,甚至时常抽风无法访问,Netlify更快更稳定
  • hexo部署到GitHub的只是public下的文件,还需要另建一个仓库管理整个博客项目,而Netlify可以根据hexo项目自动构建部署

推送到Git远程仓库

远程仓库还是用GitHub,可以是私有的

然后push初始提交

1
2
3
4
5
$ git init
$ git add .
$ git commit -m "initial commit"
$ git remote add origin <远程仓库链接>
$ git push origin master

我这个版本的hexo会自动生成.gitignore,需要排除的文件已经写好了,不需要自行添加

发布网站

登录Netlify官网,点击New site from Git,选择GitHub,以及对应的仓库

然后会进入部署设置,这里Netlify检测到我们是hexo会自动填好,直接点击Deploy site

等待自动构建部署完成之后,你会得到一个二级域名,点击就可以访问了~

自定义域名

先到DNS服务商那添加记录指向Netlify给你的二级域名。我的域名是lk.geooc.com,添加一条CNAME记录就好了。如果想用geooc.com访问,还需添加一条A记录

然后进入Netlify的Overview,点击对应项目的Domain setting->Add custom domain

输入你的域名后点击Verify就OK了

另外Netlify重定向是在source文件夹下添加一个_redirects文件,内容可以参考以下

1
2
3
4
# These rules will change if you change your site’s custom domains or HTTPS settings

# Redirect default Netlify subdomain to primary domain
https://<Netlify给你的域名>/* https://<你的域名>/:splat 301!

而hexo生成默认是会忽略下划线开头的文件,所以需要在_config.yml声明包含这个文件

1
2
include:
- _redirects

OK!现在可以用你自己的域名访问了

Done!

至此我们已经在网上发布hexo博客了,大功告成!