Mastodon 中文搜尋最佳化
date
Mar 25, 2025
slug
20250325
status
Published
tags
筆記
Mastodon
summary
記錄一下在設定時踩的坑
type
Post
官網中文搜尋最佳化說明不符合現在的版本,就在設定時摸索一下,簡單記錄。
前言
假設你已經參考 Mastodon 官方網站的說明內容,成功的配置了全文搜尋。
安裝插件
在這裡你需要先安裝兩個不同的 Elasticsearch 插件:
前者用於中文分詞的搜尋,後者用於繁簡轉換。
請參照 GitHub 上的說明完成插件的安裝,安裝後進行檢查:
檢查 Elasticsearch 版本
在終端機中輸入指令:
得到的 JSON 回應內容可能會是這樣:
其中 version 底下的 number 就是目前的 Elasticsearch 版本。
檢查插件版本
可以使用 Elasticsearch 提供的 _cat/plugins API 輸入指令:
得到的回應內容可能會是這樣:
這樣就可以明確的知道目前安裝的插件版本。
插件版本要與 Elasticsearch 的版本相同
修改索引定義
這邊要修改 Mastodon 的索引配置,你可以在
../app/chewy/
目錄下找到相關文件:- accounts_index.rb
- statuses_index.rb
- tags_index.rb
接下來讓我們逐一修改各個文件:
accounts_index.rb
statuses_index.rb
tags_index.rb
測試驗證
都改完了,你超棒!接下來是後續的測試與驗證:
重建索引
請使用以下指令強制重建索引,以使新設定生效:
可以使用 _analyze API 針對索引測試,輸入指令:
看看回應的內容是否正常。
重新啟動服務
最後使用更新 Mastodon 時最常使用的指令來重啟 Mastodon 服務:
就大功告成啦!
最後別忘記去網站試試看搜尋功能,應該是可以用啦。