github page+hexo 绑定域名后页面显示404

文章首发于 我的博客

我用的站点生成框架是 Hexo。
想为自己的github page 绑定一个自己的域名,在阿里云申请了一个域名,在github page项目的setting 页面,绑定了自己的域名,过了一会儿发现可以访问了。
绑定域名设置

在部署上传新的文章后,访问变成了404
404

于是排查问题,发现setting页面绑定域名的那一栏忽然变成了空,然后发现github page项目上根目录下的CNAME文件被删了。
绑定域名为空
CNAME被删除
CNAME文件是github page 绑定域名需要添加的文件,在setting页面上设置会自动生成该文件。
于是查了下hexo的部署,发现当执行

hexo d

Hexo 会将 public 目录中的文件和目录推送至 _config.yml 中指定的远端仓库和分支中,并且完全覆盖该分支下的已有内容。
也就是说因为public 文件下没有CNAME文件,所以推送的时候远程分支的内容因为被完全覆盖所以CNAME文件也会被删除,所以就会导致404。
目录
而public下的文件是由source文件夹的内容生成的,因此正确的配置绑定域名方法应该是在source文件下(直接在public文件夹下也可以)新建CNAME文件并配置域名。
source目录

再次用hexo d 部署发现问题解决。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值