关于配置 melody 遇到的坑


这次blog重建过程也是遇到了不少的坑的,在此小小记录一下

  • 注:本文所述所有指令全部默认你使用 root 账户登录并在你的博客的运行目录下进行执行,非 root 账户登录的用户请自行加上 sudo 运行

安装 hexo 遇到的坑

如何全局卸载 Hexo

1
npm install hexo-cli -g

这个安装指令毫无疑问是没问题的。但是在你安装完 Hexo 之后发现出了问题需要全局卸载重装,要怎么卸载?

1
npm uninstall hexo-cli -g

运行之后就可以全局卸载啦

生成指令

官方文档里提到了几种指令:

1
2
3
4
hexo n //新建文章
hexo g //生成静态页面
hexo d //部署页面
hexo s //本地服务运行

其中 hexo g 有一个 -d 的选项,用于生成后直接部署;而 hexo d 有一个 -g 的选项,用于部署前先生成一次。也就是说

1
2
3
hexo g -d 
hexo d -g
hexo g && hexo d

以上三条指令相互等价

melody 的坑

第一个大坑:melody.yml

写之前我先在这批判一番:官方文档这里没有着重标示,导致一大堆人不知道出了什么问题就去 GitHub 开 Issue 然后作者还要把他们噎回来

官方文档原文:

“为了主题的平滑升级, theme-melody 使用了data files特性。
推荐把主题默认的配置文件_config.yml复制到 hexo 工作目录下的source/_data/melody.yml,如果source/_data的目录不存在那就创建一个。”

就是这句主题默认的配置文件不知道坑了多少人(包括我)

这里说的配置文件不是博客根目录下的那个 ./_config.yml

而是 ./themes/melody/_config.yml

如果复制的配置文件错了,那 hexo g 之后会白屏

所以解决方案就很简单了

1
2
mkdir ./sources/_data
cp ./themes/melody/_config.yml ./sources/_data/melody.yml

之后就是苦海无边的配置了

pug 以及 stylus 渲染器缺失

第一遍安装 melody 的时候遇到一个很迷的问题, hexo g 之后整个页面只有一句话

1
2
3
4
extends includes/layout.pug block 
content include includes/recent-posts.pug
include includes/pagination.pug
<!--这里是我手动分行了-->

遇上这种情况,说明你设备上 pug 以及 stylus 渲染器缺失,解决方法:

1
2
3
4
5
6
7
#npm 安装
npm install hexo-renderer-pug hexo-renderer-stylus --save

#yarn 安装
yarn add hexo-renderer-pug hexo-renderer-stylus

#两种指令的效果相同,选其一即可

运行后即可解决

方法来源: 官方文档

如果运行之后没有解决问题

1
2
3
rm -rf ./node_modules/
npm install
npm run dev #只是用来看一下有没有报错啥的

应该就解决了吧。。。?

如果还是不行的话,亲亲这边建议全局卸载 hexo 重头再来哦😂

方案来源:GitHub Issue

全页白屏

解决了上面那个问题之后,第二遍安装跑完 hexo g 之后,不负我望的,又出问题了

上一次是报错,这一次是整个页面啥都没有,审查元素看了 Console 也没有什么报错出现,咋回事呢。

1
hexo clean && hexo g

快去看看有没有报错吧,八成是你 melody.yml 哪里写错了

当然了,也可能是你 melody.yml 这个文件都复制错了23333

还是不知道怎么解决的问题

就在不久之前(几个小时),我兴冲冲去找朋友准备换友链,他们告诉我, CSS 炸了。

我说我这边正常的啊,还 ctrl+F5 刷新了好多遍,直到我想起来去 CloudFlare 把网站缓存删了才复现了问题, CSS 错误:

1
2
ERROR Asset render failed: css/index.css
#下面还会有一大串错误位置啥的

翻了翻 Issue 发现有四个 Issue 提到了这个问题,解答内容也不过是:

你配置文件写错了

反正我是没找到到底错在哪里,欢迎其他遇到这个问题并成功修复的小伙伴写个修复经验。

所以,我是把整个网站根目录删干净重新建了一遍才解决了这个问题(x)

反正解决了就好

busuanzi 不正常显示统计数字

这个问题我正在准备和 busuanzi 的作者联系问一下是什么问题,因为统计数据在审查元素里是能看见的,就是不显示,去 Issue 查了 melody 这边的回复,也就是建议联系 busuanzi 询问,因为 melody 也只是用了他的服务而已。

悄咪咪说一句,刚装好的时候其实是正常的,但是后面莫名其妙就没了

方案来源:GitHub Issue