【发布时间】:2011-07-06 09:23:18
【问题描述】:
我看到了这个帖子here,他很好地解释了如何显示突出显示的结果,但对我来说这不起作用......
我得到了第一个突出显示和所有内容,但是与没有突出显示的原始响应相比,其中的文本非常少......
如何将高亮内容与 php 中的原始结果集合并?
【问题讨论】:
我看到了这个帖子here,他很好地解释了如何显示突出显示的结果,但对我来说这不起作用......
我得到了第一个突出显示和所有内容,但是与没有突出显示的原始响应相比,其中的文本非常少......
如何将高亮内容与 php 中的原始结果集合并?
【问题讨论】:
我建议使用非默认荧光笔以获得更好的效果。 在你的 solrconfig.xml 中搜索你的 RequestHandler:
<requestHandler name="/select" class="solr.SearchHandler">
并添加以下内容:
<str name="hl.usePhraseHighlighter">false</str>
<str name="hl.useFastVectorHighlighter">true</str>
<str name="hl.boundaryScanner">breakIterator</str>
现在转到荧光笔部分
<searchComponent class="solr.HighlightComponent" name="highlight">
然后搜索这一行:
<boundaryScanner name="default" default="false" class="solr.highlight.SimpleBoundaryScanner">
确保将其设置为“default=false”。 然后将上面定义的 BoundaryScanner 配置为默认值:
<boundaryScanner name="breakIterator" default="true" class="solr.highlight.BreakIteratorBoundaryScanner">
对于此扫描仪,将类型更改为“SENTENCE”:
<str name="hl.bs.type">SENTENCE</str>
并设置您的语言和国家/地区设置。
这个改变给了我更好的高亮效果!
Awww - 差点忘了提及 schema.xml 中的变化。获取要突出显示的字段并添加以下选项:
termVectors="true" termPositions="true" termOffsets="true"
【讨论】:
尝试hl.fragsize 增加 Solr 返回的突出显示的 sn-p 的大小。
【讨论】:
fl 中删除该字段,使其不会返回两次。使用hl.alternateField 确保字段值在高亮部分返回,即使没有匹配的词条。