0

我正在构建一个返回短语结果的全文搜索引擎。

(a) 我正在尝试使用 PHP 在 SPHINX 中仅使用 SPH_MATCH_PHRASE 匹配短语。问题是当我搜索时,例如“这是一个短语”,它也会产生“这是一个短语”和“一个短语”和“这是一个”和“这是”和“短语”等的相关结果. 有没有办法将结果限制为只有完整的短语?

我尝试过的:我搜索了 S/O 并找到了如何查询 Sphinx 以获得完全匹配的短语?这建议将搜索查询放在引号中。我试过了,但是当附加到搜索词时,它返回了零搜索结果。

(b) 这是我第一次使用 SPHINX,我几乎没有 Linux 经验,但我设法在 Linux VPS 上启动并运行它。我启动了索引器服务,但我不知道如何让它每隔一段时间自动重新索引。这是 SPHINX 配置还是 Linux 命令?

我尝试过的:我在 S/O 中搜索了上面的 (b) 并找到了这个,但是对于 Ruby on Rails考虑 sphinx 自动索引,所以它对我没有帮助。

谢谢

4

2 回答 2

1

这建议将搜索查询放在引号中。

是的。那是与扩展匹配模式一起使用的。SPH_MATCH_EXTENDED

在 php 中确保您正确使用 $cl->setMatchMode()。

我不知道如何让它每隔一段时间自动重新索引。

克朗。您设置了一个 crontab 作业,以在适合您情况的任何时间间隔调用索引器程序。

于 2013-02-20T14:20:34.723 回答
0

Baryhunter 在上面接受的答案中的许多链接和提示被证明是有用的。这为我做了索引部分,以防以后有人需要。

/usr/local/sphinx/bin/indexer --config /usr/local/sphinx/etc/sphinx.conf && /usr/local/sphinx/bin/searchd --rotate --config /usr/local/sphinx/etc/sphinx.conf
于 2013-02-20T16:05:54.490 回答