Hexo大小写引起的404问题

文章更新

  1. 20170330-初次成文

为什么会有这篇文章

之前用hexo发布的文章,到了github或者coding.net网站上之后,总会有2个路径无法打开,后来仔细想了想,才发现是大小写的问题。怎么办?当然了清空了文件,重新发一次了呗。

解决办法

首先修改Hexo根路径下的.git目录下的config文件,将其中的ignorecase的属性,由true修改为false。

然后,删除博客项目中 .deploy_git 文件夹下的所有文件,并 push 到 Github 上, 这一步是清空你的 github.io 项目中所有文件。

具体如何做呢?这个其实费了点时间。

想想其实就知道,hexo d所做的,就是将.deploy目录下的文件,推送到你的github的那个和你github用户名同名的项目库中,那么我们要做的,就是手动先清空那个远程repo中的文件,然后再上传过一次!

说起来简单,那么如何清空远程repo上的文件呢?最简单的办法,就是将本地对应的项目库中的文件全部删掉,然后再git push回去,就可以了,如何做呢?

这里以github为例,假设你的github用户名是patrick,那么你的hexo项目,路径就应该是https://github.com/patrick/patrick.github.io.git。

我们先在你的hexo目录下,建立一个名为.deploy的目录

git clone https://github.com/patrick/patrick.github.io.git yourHexoPath/.deploy/patrick.github.io

然后,进去这个目录,删掉所有文件,记得要保留.git目录,在执行推送

git add .
git commit -m 'delete all hexo generated files'
git push origin master

这样,你github下的repo内容就空了。

下一步,本地hexo生成文件,再复制到上面的目录中去,再手动push一次即可。

hexo generate
cp -R public/* .deploy/patrick.github.io
cd .deploy/patrick.github.io
git add .
git commit -m "update"
git push origin master

看看,你的网站是不是和hexo d -g发布的效果一样呢?

参考文章

  1. Hexo 部署到 Github Pages 文件夹大小写问题
  2. 手把手教你使用Hexo + Github Pages搭建个人独立博客