首页  >  文章  >  web前端  >  如何将美丽搜索与 WikiJS 结合使用

如何将美丽搜索与 WikiJS 结合使用

PHPz
PHPz原创
2024-08-22 18:35:46954浏览

How to use Meilisearch with WikiJS

总长DR

酱:https://github.com/mbround18/wikijs-module-meilisearch

软件

什么是美丽搜索

Meilisearch 是一个专为速度和简单性而构建的开源搜索引擎。它用 Rust 编写,旨在以最少的配置提供快速、相关的搜索结果。 Meilisearch 擅长全文搜索,并且针对性能进行了优化,即使对于大型数据集也是如此。它支持开箱即用的功能,例如拼写错误容忍和可自定义的相关性排名。

美丽搜索链接

什么是 WikiJS

Wiki.js 是一款现代的开源 wiki 软件,为管理和共享内容提供了强大而灵活的平台。它基于 Node.js 构建,设计轻量、快速且易于使用,具有时尚直观的界面,适合所有技能水平的用户使用。

链接至 Wikijs

如何整合两者

先决条件

  • 美丽搜索的运行实例
  • 运行 wikijs 实例

如果你没有这些,你可以使用这个 docker compose。

使用 docker 撰写

  1. 将 docker compose 下载到目录中。
  2. 创建一个名为 pkg 的文件夹
  3. 创建一个名为 tmp 的文件夹
  4. 创建一个名为 config 的文件夹。
  5. 在配置文件夹中,对于此演示,请下载此配置
  6. 运行 docker compose up 以使其根据需要生成文件。

安装模块

  1. 导航到 github.com/mbround18/wikijs-module-meilisearch 上集成它们的模块
  2. 导航到发布选项卡
  3. 在最新版本中下载Meilisearch.zip 文件。
  4. 将 zip 解压到 wikijs 服务器上的 /wiki/server/modules/search/meilisearch。如果您使用 compose,请 docker compose down 并将 zip 文件解压到您的 ./pkg 文件夹中。
  5. 重新启动您的 wikijs 服务器。

设置模块。

建议在生产实例中,让 meilisearch 生成一个新密钥供您的应用程序使用。您可以通过以下curl命令来执行此操作:

curl --request POST \
  --url http://localhost:7700/keys \
  --header 'Authorization: Bearer demo' \
  --header 'Content-Type: application/json' \
  --data '{
    "description": "Wikijs Integration",
    "actions": ["*"],
    "indexes": ["wiki_index"],
    "expiresAt": "2042-04-02T00:42:42Z"
}'

将“demo”一词更改为您的主密钥。如果您正在使用 docker compose,那么这将仅适用于演示。除非您在撰写文件中更改了它。然后使用您为 $MEILI_MASTER_KEY 设置的内容。

  1. 登录您的 wikijs 实例,对于撰写演示,您可能必须创建初始登录。只需记住在初始设置屏幕上将 url 设置为 http://localhost:3000。
  2. 导航至管理仪表板。
  3. 点击搜索引擎
  4. 启用美丽搜索
  5. 根据需要调整 API 密钥和主机。
  6. 点击“应用”,如果没有收到绿色吐司消息,只需再次点击“应用”即可。发生这种情况的原因是创建索引时 Meil​​isearch 中的任务停滞。

现在它的设置是什么?

现在您可以开始使用美丽搜索来搜索您的维基了!如果您有现有内容,您可以单击“重建”,它会将您的所有内容添加到 meilisearch! :)

当您正常使用 wikijs 时,它会在 Meil​​isearch 中创建、更新和删除文档,作为正常页面渲染的一部分。

如果您想查看这方面的实时示例,在我的《龙与地下城》维基上,我们已经集成了此功能。触手可及的角色数据或场景数据的瞬间回忆起来真是太神奇了。

关于实施的注意事项,目前建议与 who 行相匹配。将来,我会重写该段以截断并提供更小的建议。

以上是如何将美丽搜索与 WikiJS 结合使用的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn