我是SOLR的新手。我正在阅读Packt在SOLR上发表的一本书,并尝试让练习运行起来。我已经相当远了很多,但我还有很长的路要走。目前我已经推出了一款带有Digital Ocean(Ubuntu SRVR 14.04)的测试服务器,只是为了在这里练习:
http://patrickisgreat.me:8983/solr/#/
我创建了一个名为privatelounge的核心。我创建了一个简单的schema.xml,solrconfig.xml,并索引了一个简单的文档。我已经在这里阅读了其他几个主题,例如this和this,它们似乎不适用于我的配置。
这是我的schema.xml:
<?xml version='1.0' ?>
<schema name='privatelounge' version='1.1' >
<types>
<fieldtype name='text_en' class='solr.TextField'>
<analyzer>
<tokenizer class='solr.WhitespaceTokenizerFactory' />
<filter class='solr.LowerCaseFilterFactory' />
</analyzer>
</fieldtype>
</types>
<fields>
<dynamicField name='*' type='text_en' multiValued='true' indexed='true' stored='true' />
<copyField source='*' dest='fulltext' />
<field name='fullText' type='text_en' multiValued='true' />
</fields>
<defaultSearchField>fullText</defaultSearchField>
<solrQueryParser defaultOperator='OR' />
</schema>
这是我的solrconfig.xml:
<config>
<luceneMatchVersion>LUCENE_45</luceneMatchVersion>
<directoryFactory name='DirectoryFactory' class='solr.MMapDirectoryFactory' />
<requestHandler name='standard' class='solr.StandardRequestHandler' default='true' />
<requestHandler name='/update' class='solr.UpdateRequestHandler' />
<requestHandler name='/admin/' class='org.apache.solr.handler.admin.AdminHandlers' />
<admin>
<defaultQuery>*:*</defaultQuery>
</admin>
</config>
这是我索引的唯一文件:
<add>
<doc>
<field name='title'>Dummy Test Document</field>
<field name='text'>Hello World</field>
</doc>
</add>
使用此命令:
sudo curl -X POST 'http://localhost:8983/solr/privatelounge/update?commit=true' -H 'Content-Type: text/xml' -d @docs.xml
因此,运行:的查询会返回文档,但使用查询语言的任何变体运行fullText中任何术语的查询都会返回:
{
"responseHeader":{
"status":0,
"QTime":4},
"response":{"numFound":0,"start":0,"docs":[]
}}
到目前为止,我感到很困惑。对于任何愿意提供帮助的人 - 我可以在我的测试服务器上为您创建一个shell帐户,并传真给你一个corndog,啤酒或拥抱。
非常感谢!
答案 0 :(得分:1)
这对我来说很好用:
http://patrickisgreat.me:8983/solr/privatelounge/select?q=text%3A%22hello%22&wt=json&indent=true
我明白了:
{
"responseHeader":{
"status":0,
"QTime":1},
"response":{"numFound":1,"start":0,"docs":[
{
"title":["Dummy Test Document"],
"fulltext":["Dummy Test Document",
"Hello World"],
"text":["Hello World"]}]
}}
确定您正确输入了查询?