解決 Hexo Algolia 無法建立索引的問題

太久沒有寫文章,也沒有好好的 build 這個專案,記錄一下怎麼解決錯誤訊息的過程

前言

在使用 Hexo 建立靜態網站時,添加站內搜索功能是一個常見的需求。Algolia 是一個強大的搜索服務,可以與 Hexo 無縫集成,為網站提供高效的搜索體驗。但是,在配置過程中,許多人可能會遇到無法建立索引的問題。本文將詳細介紹解決此問題的步驟。

  1. 檢查 Algolia 配置
    首先,確保您已經正確配置了 Algolia 相關設定。在 Hexo 配置文件 _config.yml 中,應該有如下配置:
1
2
3
4
5
6
algolia:
appId: '<APP_ID>'
apiKey: '<ADMIN_API_KEY>'
indexName: '<INDEX_NAME>'
chunkSize: 5000
其中, appId、apiKey indexName 需要替換為您在 Algolia 上的實際應用程式 ID、管理員 API 密鑰和索引名稱。
  1. 安裝並配置 hexo-algolia 插件
    接下來,需要安裝 hexo-algolia 插件。在 Hexo 根目錄下執行以下命令:
1
2
npm install hexo-algolia --save
npm install hexo-algoliasearch --save

然後在 _config.yml 中啟用該插件:

1
2
3
4
5
6
# Algolia Search
algolia:
appId: '<APP_ID>'
apiKey: '<ADMIN_API_KEY>'
indexName: '<INDEX_NAME>'
chunkSize: 5000
  1. 清除 Algolia 索引緩存並重建
    有時候,由於 Algolia 索引緩存的原因,導致無法正常建立索引。可以通過以下命令清除緩存並重新建立索引:
1
2
3
4
5
6
hexo algolia
而在這之前还需要hexo g生成文件
所以具體使用命令就是
hexo cl && hexo g && hexo algolia
或者在未安装 HEXO CLI 的情况下使用以下命令
npm run clean && npm run build && hexo algolia -n && gulp

最後,我新增了 hexo-algolia & hexo-algoliasearch
並將布版指令調整成 hexo clean && hexo g && hexo algolia && hexo deploy

就成功啦!

參考資料:Hexo Butterfly Algolia 搜索的使用