php - 如何在 Sphinx 的一个索引中使用多个来源?

标签 php mysql search configuration sphinx

Sphinx 配置文件暗示它支持一个索引的多个来源,我如何实际指定它?

这是配置文件的片段:

# document source(s) to index
# multi-value, mandatory
# document IDs must be globally unique across all sources
source                  = src1

我试过将其设置为以下格式:

source = src1, src2
source = [src1, src2]

我也尝试过两次使用 source 变量,例如:

source = src1
source = src2

我怀疑我只是个笨蛋,因为我不确定在配置文件中使用的语法。有什么想法吗?

使用第二个代码片段我得到以下错误:

ERROR: index 'iwa': fulltext fields count mismatch (me=iwa_publications, in=iwa_events, myfields=3, infields=8).

这两个来源是 iwa_events 和 iwa_publications。两者都有唯一的 ID 列,并且两个来源在单独编制索引时都有效。

最佳答案

如果您想一次搜索多个索引,您必须在 PHP 代码中指定它们,而不是在配置文件中。

只需在您的 Query 方法中分隔索引(参见 documentation ):

$cl->Query ( "test query", "index1 index2" );

<罢工>

根据documentation你可以。 您的第二个代码片段是列出多个来源的正确格式。请编辑您的问题,告诉我们您的实际问题是什么。

关于php - 如何在 Sphinx 的一个索引中使用多个来源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2027109/

相关文章:

MySQL PHP 搜索多个字段

php - 搜索另一个站点的搜索框

php - 无法通过php上传文件

php - 在 php 中显示来自 mysql 的某些行

mysql - 获取一组记录的平均值

mysql - 紧凑型(): Undefined variable: users

search - ElasticSearch中没有关联文档的构面

php - 带下划线正则表达式模式的字母数字

PHP Session 和受限的 mysql 访问

asp.net - 如何在 mysql 数据库中存储文件列表并根据用户角色显示它们