13.问题:如何在Windows系统下搭建并使用Solr全文搜索服务器?

解决方案:

第1步:准备Solr服务器安装和配置文件

第2步:将solr文件夹拷贝到Tomcat的bin目录下,然后记住该路径

例如:我的solr文件夹的路径为:C:\Program Files\Java\apache-tomcat-9.0.14\bin\solr

第3步:将solr工程(solr-4.10.3)的war包拷贝到Tomcat的webapps文件夹中,然后启动Tomcat

第4步:来到webapps文件夹中Tomcat热部署自动解压后的solr工程(solr-4.10.3)文件夹下,进入WEB-INF的目录中创建一个新文件夹并命名为"classes"

第5步:把solr服务器相关依赖拷贝到solr工程WEB-INF的lib目录下

第6步:把solr服务器相关配置文件拷贝到solr工程的WEB-INF的classes文件夹中

第7步:修改solr工程的web.xml文件,建议将solr服务器home目录拷贝到Tomcat的bin目录下,然后打开solr工程的web.xml文件找到env-entry节点,将注释打开并修改路径如下所示:

    <!--告诉solr工程solrhome的位置-->
    <env-entry>
        <env-entry-name>solr/home</env-entry-name>
        <env-entry-value>C:\Program Files\Java\apache-tomcat-9.0.14\bin\solr</env-entry-value>
        <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>

第8步:修改solr所在工程的Tomcat服务器的端口号为8081(默认为8080),来到Tomcat文件夹中的conf目录下,用notepad++打开编辑,把里面的默认端口号都分别加1

第9步:配置solr的中文分词器和业务字段,来到Tomcat文件夹的bin目录下的solr文件夹中,用notepad++打开collection1文件夹中的conf目录下的schema.xml文件进行编辑

9.1.修改Solr的schema.xml文件,在最后面添加以下节点:

    <!-- 配置中文分词器 -->
    <fieldType name="text_ik" class="solr.TextField">
        <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
    </fieldType>

9.2.然后接着在后面配置项目所需搜索的业务字段即可

    <!-- 配置业务字段 -->
    <field name="mername" type="text_ik" indexed="true" stored="true"/>
    <field name="address" type="text_ik" indexed="true" stored="true"/>
    <field name="addressDetailed"  type="text_ik" indexed="true" stored="true"/>
    <field name="images" type="string" indexed="false" stored="true" />
    <field name="mainImages" type="string" indexed="false" stored="true" />
    <field name="introduction" type="text_ik" indexed="true" stored="true" />
    <field name="telphone" type="string" indexed="false" stored="true" />
    <field name="rules" type="string" indexed="false" stored="true" />
    <field name="businessTimeStart" type="string" indexed="false" stored="true" />
    <field name="businessTimeStop" type="string" indexed="false" stored="true" />
    <field name="longitude" type="double" indexed="false" stored="true" />
    <field name="vatitude" type="double" indexed="false" stored="true" />

    <!-- 配置复制域 -->
    <field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
    <copyField source="mername" dest="item_keywords"/>
    <copyField source="address" dest="item_keywords"/>
    <copyField source="addressDetailed" dest="item_keywords"/>
    <copyField source="introduction" dest="item_keywords"/>

至此,solr服务器已经在Tomcat容器中搭建完毕!

第10步:测试solr服务是否搭建成功

10.1.先关闭Tomcat然后再启动Tomcat,打开浏览器在地址栏输入http://127.0.0.1:8081/solr-4.10.3

10.2.测试业务字段和中文分词器 http://127.0.0.1:8081/solr-4.10.3/#/collection1/analysis

10.3.0测试solr查询 http://127.0.0.1:8081/solr-4.10.3/#/collection1/query

祝你好运~


4/4/2019 3:18:06 PM 已解决!