在solr中搜索URL的结果不正确
尝试运行以下搜索时,我一定是做错了什么在solr中搜索URL的结果不正确,url,solr,nutch,Url,Solr,Nutch,尝试运行以下搜索时,我一定是做错了什么 http://localhost:8983/solr/collection1/select?q=url:www.abc.com&wt=xml&indent=true 这不是给这个网站的结果回来,这是给一切回来。xml在url的设置方面非常普通 <fieldType name="text" class="solr.TextField" positionIncrementGap="100"> <
http://localhost:8983/solr/collection1/select?q=url:www.abc.com&wt=xml&indent=true
这不是给这个网站的结果回来,这是给一切回来。xml在url的设置方面非常普通
<fieldType name="text" class="solr.TextField"
positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true" words="stopwords.txt"/>
<filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1"
catenateWords="1" catenateNumbers="1" catenateAll="0"
splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
</analyzer>
</fieldType>
<fieldType name="url" class="solr.TextField"
positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1"/>
</analyzer>
</fieldType>
如果我使用主机:www.abc.com,它可以工作
为什么使用url字段时会出现看似不正确的结果
感谢您的帮助。假设您使用的是Solr 3.1或更高版本 StandardTokenizerFactory-它基于创建令牌。这意味着URL将被分解成多个标记,匹配其中任何一个标记都将被视为成功
请尝试为您的
url
字段类型使用。这应该保留完整的URL并仅与之匹配。除了使用关键字TokenizerFactory外,还必须删除WordDelimiterFilterFactory。WDF拆分标点符号和其他分隔符上的标记。。。它们在URL中非常丰富。在进行更改并重新启动Solr或重新加载core之后,您必须重建索引
如果您不需要强制URL使用小写,另一种方法是:从TextField切换到StrField,完全取消analyzer配置。非常感谢。我知道一定是这样的。这就是答案。哇!我很快就和他谈过了。不,没用。它仍在恢复所有结果。是的,我是4.2。非常感谢。如果我重建索引,这确实有效。我希望不必那样做。但你已经回答了我的问题。这两种方法都有效,我已经对它们进行了测试。再次非常感谢。