解决由于大小写敏感导致的Hexo页面404问题
在Windows下,文件名和文件夹名字是忽略大小写的,而在Linux下是大小写敏感的。这导致我的博客页面在本地预览时可以正常访问,但部署到GitHub Page, Aliyun OSS后会出现页面404的问题。
以Hexo的分类Categories为例,我以如下命令创建了分类页面:
1 | hexo new page Categories |
在主题配置文件
中,设置侧边栏:
1 | menu: |
然而,我在Hexo配置文件
中,按如下设置:
1 | category_dir: categories |
这导致我点击侧边栏,可以正常的进入分类页面,但是点击某一分类后,则会报404错误。URL中本应该是大写的“Categories”变成了小写的“categories”。而Windows下是大小写不敏感的,因此在Windows下本地预览是正常的,但部署后就会出现问题。
解决办法:
在
Hexo配置文件
中,设置:1
category_dir: Categories
在
YourBlogDir/.deploy_git/.git/config
下,设置Git不要忽略大小写。1
2
3[core]
....
ignorecase = false清空部署端,以Git为例:
1
2
3
4cd .deploy_git
git rm -rf *
git commit -m 'clean all file'
git push重新渲染并上传
1
2hexo clean
hexo g -d