硬件环境
window版本为:windows 7 64位
软件环境
JDK版本:1.7.0_17
solr版本:4.10.3
tomcat版本:tomcat 7
安装过程
步骤一:将下载好的solr-4.10.4.zip解压,解压后拷贝%solrhome%\example\solr该目录下所有文件到C:/solr
步骤二:复制%solr%\dist\solr-4.10.3.war到tomcat安装目录下的webapp目录,并修改其名称为:solr.war
步骤三:修改C:\solr\collection1\conf目录下solrconfig.xml文件,将dataDir节点的值指向步骤一所配置的文件路径。如下图所示:
步骤四:修改%tomcat%\webapp\solr\WEB-INF\web.xml文件,如下所示:
步骤五:拷贝%solr%\dist\solrj-lib 目录下所有jar包到%tomcat%\lib目录下
步骤六:拷贝%solr%\example\lib\ext 目录下所有jar包到%tomcat%\webapp\solr\WEB-INFlib目录下。
最后启动tomcat,在浏览器中输入http://localhost:8080/solr 即可访问solr管理页面,如下图:
值得注意的是,在使用solr的过程中,为了避免因为中文乱码导致搜索不到结果,需要修改tomcat的config/server.xml中Connector的配置:
集成ikanalyzer中文分词器
1、在谷歌http://code.google.com/p/ik-analyzer/downloads/list下载IK Analyzer 2012FF_hf1解压后得到如下目录结构:
2、将IKAnalyzer2012FF_u1.jar包copy到 apache-tomcat-7.0.56/webapps/solr/WEB-INF/lib 下。
在apache-tomcat-7.0.56/webapps/solr/WEB-INF/下创建classes目录
将IKAnalyzer.cfg.xml、stopword.dic copy到 apache-tomcat-7.0.56/webapps/solr/WEB-INF/classes
3、修改apache-tomcat-7.0.56/webapps/solr/solr_home/collection1/conf/schema.xml
在第一个节点内添加如下配置:
<fieldType name="text_ik" class="solr.TextField"> <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/> <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/> </fieldType>将对应需要用ik分词的字段的type改为以上定义的name值 text_ik(大约120行处):
<field name="sku" type="text_en_splitting_tight" indexed="true" stored="true" omitNorms="true"/> <field name="name" type="text_ik" indexed="true" stored="true"/> <field name="manu" type="text_ik" indexed="true" stored="true" omitNorms="true"/>配置完成,重启tomcat并访问http://localhost:8080/solr。 发现左边可以选择分词器
根据我们配置的中文分词器,选择Manu:
分析一个熊孩子造的句子:小明吃完水果然后喝水
发现非常智能的构建出关键词了。