SPHINX仅匹配短语,以及在PHP中的SPHINEX自动索引


SPHINX Match Phrases only, and SPHINX Automatic Indexing in PHP

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

(a) 我正在尝试使用PHP在SPHINX中仅使用SPH_match_PHRASE来匹配短语。问题是,当我搜索"这是一个短语"时,它也会产生"这是个短语"、"一个短语"、"这是"、"这就是"answers"短语"等的相关结果。有没有办法将结果限制为仅完整的短语?

我尝试过的:我搜索了S/O,找到了How to query Sphinx for a exactly matching phrase?这建议将搜索查询置于引号中。我试过了,但当附加到搜索项时,它返回的搜索结果为零。

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

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

感谢

建议将搜索查询置于引号中

是的。用于扩展匹配模式。SPH_MATCH_EXTENDED

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

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

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

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