Hexo部署到Github后因文件夹名大小写引起站点404
本地改了已经提交过的文件名,且文件内容 Front-matter 部分更改了 tags 标签大小写,Hexo 部署到 Github 后,访问该标签页,直接 404 了,然后我在本地使用 hexo s
进行预览,发现一切正常?!
发现原因
温故而知新,我最近心血来潮,规范了一下下文章标签某些单词的大小写,本地预览是没有问题的,但是提交到远程仓库之后,问题就出现了:git 默认是不区分大小写的,此即便文件夹的大小写发生了变更,git 也会表现出置之不理,导致无法找到路径。
本地预览没有问题,是因为本地是基于 Windows 系统环境,本身默认不区分大小写。
解决方案
先调整本地 git 的配置文件,使其大小写敏感,然后删除public
和.deploy_git
目录,再使用 Hexo
重新生成并部署,最后在生成的.deploy_git
目录下,找到隐藏的.git
目录,修改配置文件config
:
1 | ignorecase = true |
因为
.deploy_git
也是 Git 项目,是推送到 Github 上部署的最终产物。