使用github pages搭个博客
选择博客
对博客的页面自己没有太多的需求,能分类和分标签显示是其中一个比较重要的需求。试了下Jekyll的默认主题minima要支持分类的话需要自动改动下模版。就在自己打算改改模版的时候无意中发现了基于hexo的NexT主题,这个主题很是符合自己对博客的需求。惰性使然,转战hexo。
配置环境
参考官方的文档
配置主题
写这篇博客的时候,NexT正处在项目迁移的过程中。故而github上面有两个项目地址(老的项目地址)。老的项目中的文档有写如何添加分类和标签。其它的比如博客的图标和标题这类的修改就不赘述了。主要是修改主题的_config.yml。
部署到github pages
可直接参考此处文档
安装相关的 部署插件
1
npm install hexo-deployer-git --save
配置插件
编辑_confg.yml文件,相应的修改如下配置1
2
3
4
5
6
7
8deploy:
type: git
repo: <repository url>
branch: [branch]
message: [message]
name: [git user]
email: [git email]
ignore_hidden: false # default is true部署
另起一个shell来监控文件的修改
1
hexo generate --watch
然后编写或者修改blog,完成后便可以部署。
1
hexo deploy
自定义域名
在source目录下新建一个名为CNAME的文件,编辑文件,写入你想绑定的域名。1
customdomain.com
编辑_config.yml文件
1
skip_render: CNAME
清除下缓存
hexo clean
重新deploy启用https
目前github pages本身仍无法很好的支持https。
这里提供一个workaround。添加搜索引擎
添加google webmaster
首先添加自己的网站,添加后有若干验证网站所有权的方法,这里采用推荐的方法——验证html文件。下载html文件,并将拷贝到hexo下的source目录下。添加baidu搜索
注册账号添加网站后,也选择通过文件来验证。操作方法和添加google一样。因为百度验证文件含有下划线,github pages默认使用Jekyll生成器,会忽略带有下划线的文件。所以我们在新建一个叫.nojekyll的空文件来禁用Jekyll。1
2
3
4
5cd .deploy_git
touch .nojekyll
git add .nojekyll
git commit -m "forbid jekyll"
git push修改配置文件
编辑_config.yml文件1
2
3
4skip_render:
- CNAME
- googlebac3b883ec177d92.html
- baidu_verify_ZlUgoHo270.html清除下缓存
hexo clean
重新deploy