实验的版本:4.7.0
下载地址:http://mirrors.hust.edu.cn/apache/lucene/solr/4.7.0/solr-4.7.0.tgz
通过tar命令解压下载的压缩包,得到如下目录结构。
在建立一个solr的home目录,比如建在/data/solrhome,进入上面解压目录/solr-4.7.0/example/solr
把这个文件夹里面所有的文件copy到/data/solrhome,进入/data/solrhome/collection1/conf,里面有个solrconfig.xml文件并打开:
<lib dir="../../../contrib/extraction/lib" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-cell-\d.*\.jar" /> <lib dir="../../../contrib/clustering/lib/" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-clustering-\d.*\.jar" /> <lib dir="../../../contrib/langid/lib/" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-langid-\d.*\.jar" /> <lib dir="../../../contrib/velocity/lib" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />
把这几个配置注释掉,暂时用过不到。
<!-- <lib dir="../../../contrib/extraction/lib" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-cell-\d.*\.jar" /> <lib dir="../../../contrib/clustering/lib/" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-clustering-\d.*\.jar" /> <lib dir="../../../contrib/langid/lib/" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-langid-\d.*\.jar" /> <lib dir="../../../contrib/velocity/lib" regex=".*\.jar" /> <lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" /> -->
同样是这个文件,在里面找到下面这项配置,这个是指定你的索引文件存在什么地方的
<dataDir>${solr.data.dir:}</dataDir>
我的索引文件是存在:/data/solrindex,把配置改成如下配置就可以了,保存修改后的文件。
<dataDir>${solr.data.dir:/data/solrindex}</dataDir>
进入solr压缩包得解压目录dist,里面有个solr-4.7.0.war包,复制到你的tomcat下的webapp目录,启动tomcat后会解压solr-4.7.0.war包,并解压到该目录下的solr目录,然后删除tomcat的webapp下的solr-4.7.0.war包。解压后进入solr目录,这个目录就是一个标准的web项目的目录了。
进入WEB-INF目录,找到web.xml用记事本等文本编辑工具打开,找到下面这段配置,env-entry-value这项配置,这个配置是指定你的solr的home目录,例如我的是:/data/solrhome
<env-entry> <env-entry-name>solr/home</env-entry-name> <env-entry-value>/data/solrhome</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
这时候我们启动会报错,说找不到一些类,这些类是log4j相关的,记日志用的。
需要的jar包如下:
从/solr-4.7.0/example/lib/ext复制所有的jar到tomcat/lib下,并复制solr-4.7.0\example\resources\log4j.properties到tomcat/lib下
重新启动tomcat,浏览器进入:http://localhost:8080/solr,便进入了solr的管理界面了
1.下载最新的Ik中文分词器。
下载地址:http://ik-analyzer.googlecode.com/files/IK%20Analyzer%202012FF_hf1.zip
2.解压IK Analyzer 2012FF_hf1.zip,获得IK Analyzer 2012FF_hf1。将该目录下的IKAnalyzer.cfg.xml,stopword.dic放到之前安装TOMCAT_HOME/webapps/solr/WEB-INF/classes目录下(没有就创建classes文件夹。) IKAnalyzer2012FF_u1.jar放到之前安装的TOMCAT_HOME/webapps/solr/WEB-INF/lib目录下
3.修改/solr_home/collection1/conf/中的schema.xml,在<type></types>中增加如下内容:
<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>
同时修改filed 使filed引用text_ik.这样才能使用IK分词器。
<field name="name" type="text_ik" indexed="true" stored="true"/>
4.测试:http://localhost:8080/solr/#/collection1/analysis 查看结果,说明配置成功。