在html内容中配置查找URL

时间:2013-11-27 10:31:51

标签: search sphinx

有人可以帮我配置Sphinx以获取html内容中最佳匹配网址(网址的一部分)吗?

我的配置:

index base_index
{
    docinfo         = extern
    mlock           = 0
    morphology      = none
    min_word_len    = 3
    charset_type    = utf-8
    charset_table   = 0..9, A..Z->a..z, a..z
    enable_star     = 1
    blend_chars     = _, -, @, /, .
    html_strip      = 0
}

我在SPH_MATCH_EXTENDED模式的后端(PHP)上使用SphinxAPI。

我不明白搜索是如何运作的。如果我找到“domain.com”,我有37个结果。如果“www.domain.com” - 643结果。但为什么? “domain.com”是“www.domain.com”的针脚,理论上第一次查询时必须获得更多结果。

FreeBSD 9.2。 Sphinx 2.1.2

16个分布式索引(147Gb)

1 个答案:

答案 0 :(得分:0)

这有点晚了,但无论如何,这是我的想法。

当您搜索www.domain.com时,sphinx实际上分别在寻找www domaincom。如果您只是在搜索domain.com,那么它只是在寻找domaincom。这可能是www.domain.com返回更多结果的原因,因为www在整个索引中出现频率更高。

由于您正在搜索网址,因此我会根据您的搜索方式设置stopwords。对我而言,我会www com org,基本上所有顶级域名都会停用。您可能希望离开顶级域名,只需将www设为停用词。这样,您就可以在搜索结果中加权com高于net

如果您设置了正确的停用词,当有人搜索domain.com时,sphinx实际上只会在索引中查找domain的点击数,无论是domain.com还是domain.org还是{ {1}}。