封面图:https://www.pixiv.net/artworks/146641763
序:
这次就不说前言了,因为根本没什么好注意的。其实fuwari博客的搜索功能从部署完一开始就是坏的,之前幻梦一直不高兴修(本来以为是作者没有把功能实现,想试试有没有更好的搜索方案的,结果发现是原来自带的功能坏了),查了下issues发现可能是pagefind的问题https://github.com/saicaca/fuwari/issues/529。再F12看一下,果然pagefind.js加载是报错的。这个时候就发现https://github.com/saicaca/fuwari/pull/706 提过修复的办法。试下来发现不对啊,怎么还是没有生成,赶紧看log……这log里不是有pagefind的输出吗?

什么时候有的呢,查了下记录原来幻梦的命令根本就没错,其实从部署那天开始pagefind就是好的。那文件去哪了?之前的**【教程】利用GA4统计实现静态博客阅读统计** 遇到过输出结果与可见文件不相符的问题,这次可能又是Edgeone的锅,于是就有了下面的这个修改。
正文:
修改方法极其简单,但是先确定你的pagefind是否正常的运行了,如果没有运行先看看上面序里提到的两个issues,先让pagefind运行起来,后面再用这个针对EdgeonePages的解决方案(EdgeonePages截止发稿时,这个问题百分百能复现,任何插件只要是输出到dist,又没有被Edgeone识别移动到.edgeone/assets/那就一定会出问题)。
pagefind除了--site dist这个参数外,还有--output-path参数,能指定输出到对应目录。那么Edgeone能够正常被访问的目录不是dist而是.edgeone/assets/。所以我们只需要把原本的pagefind --site dist修改为pagefind --site dist --output-path .edgeone/assets/pagefind一切问题就都解决了。
