我正在尝试在我的Solr索引中获取所有字段的列表,包括静态和动态字段。 Another SO answer建议使用Luke请求处理程序。
建议在此网址找到处理程序:
http://solr:8983/solr/admin/luke?numTerms=0
但是,当我在服务器上尝试此URL时,出现404错误。
我核心的管理页面在http://solr:8983/solr/#/mycore
,所以我也尝试了http://solr:8983/solr/#/mycore/admin/luke
。这也给了我另一个404。
有谁知道我做错了什么?我应该使用哪个网址?
答案 0 :(得分:3)
首先,您必须启用Luke请求处理程序。请注意,如果您从示例solrconfig.xml开始,则可能不需要显式启用它,因为
<requestHandler name="/admin/" class="solr.admin.AdminHandlers" />
为你做。
然后,如果您需要以编程方式访问数据,则必须向http://solr:8983/solr/mycore/admin/luke
发出HTTP GET请求(无哈希标记!)。响应是XML格式,但指定wt参数可以获得不同的格式(例如http://solr:8983/solr/mycore/admin/luke?wt=json
)
如果您只想查看SOLR Web界面中的字段,请从下拉菜单中选择您的核心,然后单击“模式浏览器”
答案 1 :(得分:2)
在Solr 6中,solr.admin.AdminHandlers已被删除。如果您的solrconfig.xml包含行<requestHandler name="/admin/" class="solr.admin.AdminHandlers" />
,则无法加载。您将在日志中看到错误,告知您无法加载类org.apache.solr.handler.admin.AdminHandlers
。
您必须在solrconfig.xml中包含行
<requestHandler name="/admin/luke" class="org.apache.solr.handler.admin.LukeRequestHandler" />
但网址是特定于核心的,即http://your_server.com:8983/solr/your_core_name/admin/luke
您可以按如下方式指定参数 fl,numTerms,id,docId :
答案 2 :(得分:0)
您可以使用this Luke tool来探索Lucene索引。
您还可以使用solr管理页面: http://localhost:8983/solr/#/core/schema-browser