【发布时间】:2017-04-07 07:07:07
【问题描述】:
我是 Solr 的新手,我的任务是在所有搜索查询的结果中阻止某些文档。
我搜索并发现了一些可以阻止结果的方法。
- elevate.xml (https://wiki.apache.org/solr/QueryElevationComponent)
- 在查询中使用“excludeIds”参数(http://localhost:8983/solr/elevate?q=:&elevatedIds=doc3,doc4&excludeIds=doc6,doc8)
- 使用以下内容:
<lst name="appends">
<str name="excludeIds">doc_id_1,doc_id_2</str>
</lst>
但上述所有 3 种解决方案都有局限性。
elevate.xml 仅适用于静态关键字/搜索,因此不适用于所有搜索。
在查询中附加 exculdeIds 会增加来自 Java 代码的 Post 请求的长度。
更新 solrconfig.xml 以附加 exculdeIds 将产生预期结果,但每次我们需要阻止的 Id 列表发生变化时,我们都必须重新启动 Solr。
那么有没有办法为所有搜索动态阻止 Solr 中的文档 ID 列表?
【问题讨论】:
标签: solr