type
status
date
slug
summary
tags
category
icon
password
对通过 Hexo 搭建博客过程中遇到的问题进行了汇总,以后再遇到相同的问题可以迅速定位解决问题。

一、点击 Local Search 本地搜索页面卡住

问题描述:安装教程配置好 Local Search 本地搜索之后,点击 搜索 按钮页面一直卡在转圈圈的地方,F12进入开发者工具没有看到错误提示,以 debug 模式启动的服务器也没有错误输出?
问题解决:出现这种情况是因为你的某一篇文章中出现了非 UTF-8 编码的字符,解决办法是找到把该异常字符并删除
  • 打开 http://localhost:4000/search.xml,确认错误字符所在的位置。如下图所示就在第6行第35列。
notion image
  • 通过 $ vim public/search.xml 打开 search.xml 文件,根据刚才的位置定位到出现问题的文章的该行该列。该位置一般会出现一个异常字符,例如 ^H 或者 ^M 等字符。注意不用直接修改 search.xml 文件。
  • 编辑出现问题的文章的 md 文件,找到出现问题的行列,把该位置的特殊字符删掉。该字符有可能是一个隐藏的字符如 ^H,一般的 markdown 编辑工具可能看不到该字符,可以通过 vim 编辑删除该字符。
  • 执行 $ hexo clean && hexo g 后重启服务器,然后再打开 http://localhost:4000/search.xml,看到下图所示表示可以正常使用本地搜索功能。
notion image

二、在执行 hexo d 部署到 GitHub 上的时候总是卡住

问题描述:在执行 hexo d 部署到 GitHub 上的时候总是卡住没有往下面执行,这时候只能 ctrl + c 中断或等待很久一段时间后才执行完毕。
问题解决:这是由于国内墙对 GitHub 的阻挡影响,导致国内用户在向 GitHub 仓库 pull 或者 push 的时候速度都会受到不同程度的影响。解决办法是使用 vpn,然后设置 git 代理

三、Hexo 文件名大小写不敏感的问题

有时候经常会出现文章部署后又修改了 Tag 或 Categories,而恰好修改的内容涉及到英文字母大写改小写或小写改大写,譬如 news 改为 News,修改后确发现部署到 Github 上无法生效,当点击对应的Tag或Categories时会出现路径无法找到从而跳转到404页面,但本地预览确一切正常。
notion image
这个现象的问题是由于git 默认是大小写不敏感,而且如果你使用的是mac,系统默认也是大小写不敏感的。因此即便文件夹的大小写发生了变更,git 也会表现出置之不理。解决思路如下:

1、使用 git 修改文件名大小写。

有两种方式。第一种是设置 git 为大小写敏感。用这种方法进行重命名,用git status就可以识别出修改了,但是不推荐用这种方式,因为在更新这种修改的时候会有麻烦(比如会 git push 创建一个新命名的文件,而且不是直接修改原来文件的命名)。
第二种方式,使用 git mv 命令(仅当core.ignorecase为true时可用)。此时的状态是 renamed,git commit 即可。

2、清空部署目录 .deploy_git

.deploy_git 在 hexo 的安装目录下面,是一个隐藏文件夹。在执行 hexo deploy 的时候会先清空 .deploy_git,然后把 public 目录下的文件拷到.deploy_git,再把 .deploy_git的、 的内容推送到 master 分支上面。
接下来删除 .deploy_git文件夹内的所有文件,并 push 到 Github 仓库(默认是 master 分支),完成后你的 github.io 项目中没有任何文件。

3、重新部署并发布

Netty系列(一):IO模型Hexo升级版本
mcbilla
mcbilla
一个普通的干饭人🍚
Announcement
type
status
date
slug
summary
tags
category
icon
password
🎉欢迎来到飙戈的博客🎉
-- 感谢您的支持 ---
👏欢迎学习交流👏