我的公司使用外部公司来提供他们的搜索需求 (SLI) 我已经实施了 Solr,因为它是免费的并且坦率地说是优越的。但是,SLI 提供了一项功能,如果您搜索“帮助”或“联系”等特殊关键字,SLI 的响应将不包含内容,而只会包含几个节点,类似于
<response>
<merch><jumpurl>http://somedomain.com/somejumpurl</jumpurl></merch>
</response>
任何想法如何使用 Solr 提供此功能?
您正在寻找的是一种“赞助搜索”。可以使用QueryElevationComponent实现类似于 Solr 中的功能。
您需要在 solrconfig.xml 中对其进行配置,然后创建一个专用字段来使用它,然后使用您要应用的特殊单词和规则创建一个外部 xml 文件,例如:
<elevate>
<query text="AAA">
<doc id="A" />
<doc id="B" />
</query>
<query text="ipod">
<doc id="A" />
<!-- you can optionally exclude documents from a query result -->
<doc id="B" exclude="true" />
</query>
</elevate>
然后以这种方式使用它:
http://host/solr/elevate?q=YYYY&debugQuery=true&enableElevation=true
如果您只想返回海拔文件中指定的结果,请在 URL 中添加 Exclusive=true:
http://host/solr/elevate?q=YYYY&debugQuery=true&exclusive=true