前提:Linux安装好jdk、tomcat
一 把solr 的压缩包上传到Linux系统并解压
二 把solr部署到Tomcat下。启动Tomcat解压缩solr的war包
1.先创建文件夹solr,用来搭建solr服务
2.拷贝tomcat到/usr/local/solr,并把solr.war包拷贝到tomcat/webapps/
3.启动tomcat,解压solr.war
4.把/root/solr-4.10.3/example/lib/ext目录下的所有的jar包,添加到solr工程中
5.创建一个solrhome(装索引库、配置文件、数据脚本)。/example/solr目录就是一个solrhome。复制此目录到/usr/local/solr/solrhome
6.关联solr及solrhome。需要修改solr工程的web.xml文件。
去掉注释,并修改solrhome路径
7.启动 cd /usr/loca/solr/tomcat/bin
浏览器访问:192.168.25.128/solr
三 配置中文分析器Ik-Analyzer
1.上传Ik-Analyzer文件到Linux中
2.把中文分析器jar包添加到solr工程中
cp IKAnalyzer2012FF_u1.jar /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib
3.把扩展词典、配置文件放到solr工程的WEB-INF/classes目录下
别遗漏了IKAnalyzer.cfg.xml
4.配置一个FieldType,制定使用IKAnalyzer。需要在solrhome/collection1/conf/schema.xml中配置如下:
<fieldType name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
5.配置业务域,type制定使用自定义的FieldType
业务字段判断标准:
1、在搜索时是否需要在此字段上进行搜索。例如:商品名称、商品的卖点、商品的描述
2、后续的业务是否需要用到此字段。例如:商品id。
<field name="item_title" type="text_ik" indexed="true" stored="true"/>
<field name="item_sell_point" type="text_ik" indexed="true" stored="true"/>
<field name="item_price" type="long" indexed="true" stored="true"/>
<field name="item_image" type="string" indexed="false" stored="true" />
<field name="item_category_name" type="string" indexed="true" stored="true" />
<field name="item_desc" type="text_ik" indexed="true" stored="false" />
<field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
<copyField source="item_title" dest="item_keywords"/>
<copyField source="item_sell_point" dest="item_keywords"/>
<copyField source="item_category_name" dest="item_keywords"/>
<copyField source="item_desc" dest="item_keywords"/>
( stored:查询出来的结果是否要在页面上显示
indexed:表示是否是检索字段,用于查询
multiValued="true",表明当前字段会使用下面的copyField标签中的字段来匹配。)
6.重启tomcat