首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 互联网 >

How to: 调试 Solr 查询中文乱码有关问题

2012-10-16 
How to: 调试 Solr 查询中文乱码问题出现乱码或者查不到结果的排查方法:1) Tomcat的server.xml需要保证:如

How to: 调试 Solr 查询中文乱码问题

出现乱码或者查不到结果的排查方法:

1) Tomcat的server.xml需要保证:

如果没有设置URIEncoding="UTF-8",在提交查询的select的url会出现乱码,当然也就查不到了。

2) 添加索引的时候,xml数据文件需要包含utf-8声明,也就是:

然后使用Solr自带的post.jar或者curl来进行post索引:

java: java -Durl=http://localhost:8080/solr/update -Dcommit=yes -jar post.jar data.xml

curl:
curl -F "file=@data.xml"?http://localhost:8080/solr/update
curl -H "Content-Type: text/xml" -d ""?http://localhost:8080/solr/update

该步骤如果没有设置好,出错的表现是,查询的结果是乱码(可以设置查询关键词为id:[* TO *]确保显示出所有的结果).

3) 如果确保了如上的两个步骤都设置正确,但是使用http://localhost:8080/solr/admin/的查询表单(该表单支持utf-8没有问题)仍旧查不到结果,则问题可能出在分词器,可以尝试不同的分词器。)

?

参考:?http://blog.chenlb.com/2009/03/solr-query-params-explain.html

热点排行