我看过这篇文章here,他很好地解释了如何显示突出显示的结果,但对我来说这不会起作用......
我正在使用突出显示和所有内容,但是与没有突出显示的原始响应相比,其中的文本非常少...
如何在php中将突出显示内容与原始结果集合并?
答案 0 :(得分:7)
尝试使用hl.fragsize来增加Solr返回的突出显示的代码段的大小。
答案 1 :(得分:6)
我建议使用非默认荧光笔来获得更好的效果。 在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"