• solr与tomcat整合


    一、准备工作:我使用的是tomcat7.0,solr-4.8.1

    solr-4.8.1解压后是这样的。

    二、开始配置了

    1、首先要创建两个文件夹。home和server。我是创建在与solr-4.8.1同一根目录上的。D:work-toolserversolrhome和D:work-toolserversolrserver

    2、从solr-4.8.1dist复制solr-4.8.1.war到D:work-toolserversolrserver解压。解压后的文件重命名为solr。

    3、从solr-4.8.1examplemulticore复制所有到之前新建的文件夹home下,这里是索引根数据。文件里会有默认的core0、core1你也可以添加自己的索引,比如复制core1文件改为mycore,打开home下的solr.xml配置自己的索引。

    <solr persistent="false">
    
      <!--
      adminPath: RequestHandler path to manage cores.  
        If 'null' (or absent), cores will not be manageable via request handler
      -->
      <cores adminPath="/admin/cores" host="${host:}" hostPort="${jetty.port:8983}" hostContext="${hostContext:solr}">
        <core name="core0" instanceDir="core0" />
        <core name="core1" instanceDir="core1" />
        <core loadOnStartup="true" name="mycore" instanceDir="D:work-toolserversolrhomemycore" transient="false" collection="test"/>
    
        <shardHandlerFactory name="shardHandlerFactory" class="HttpShardHandlerFactory">
          <str name="urlScheme">${urlScheme:}</str>
        </shardHandlerFactory>
      </cores>
            
    </solr>

    4、在tomcat/conf/catalina/localhost下新建solr.xml,如果tomcat的conf文件夹下没有/catalina/localhost,可以自己创建。如下:

    <?xml version="1.0" encoding="utf-8"?>
    
    <Context docBase="D:work-toolserversolrserversolr-4.8.1.war" reloadable="true" >
    
          <Environment name="solr/home" type="java.lang.String" value="D:work-toolserversolrhome" override="true" />
    
    </Context>

    5、从solr-4.8.1examplelibext复制所有的jar到tomcat/lib下。

    6、完成上述步骤以后,启动tomcat,访问http://localhost:8080/solr/admin确认是否配置正常。去tomcat目录下的bin。通过startup.bat来启动tomcat。

    如果你不想8080的端口号和你之前的项目的端口号重复。

    可以拷贝一个tomcat到一个地方,这个tomcat是你给solr用的。然后在该tomcat/conf文件夹下的server.xml文件,将端口号改了。

    在这里我改成8983,访问http://localhost:8983/solr/admin就可以了,验证是否成功。

    如果能看到下面的界面,就说明成功了。访问成功之后在home文件夹下的con0和con1下都会多了一个文件夹data,原本只是有conf这个文件夹的。自己配置的mycore下也多了data。

    相信学过servlet的人应该知道配置项目还有一种方式就是在tomcat的con/server.xml中配置context,放在host节点里面,如:

     <Context path="/mysolr" docBase="D:work-toolsolrmysolrserversolr" debug="0" crossContext="true">
            
          </Context>       

    path的意思是访问路径,之前是solr,现在是mysolr,docBase就是项目的位置,这个路径要是这样的结构才行

  • 相关阅读:
    Android_NDK问题:APP_BUILD_SCRIPT points to an unknown file: <project_path>/jni/Android.mk
    Android开发问题集锦-Button初始为disable状态时自定义的selector不生效问题
    一步步学习Python-django开发-添加后台管理
    一步步学习Python-django开发-建立django数据库
    一步步学习Python-django开发-Mac下搭建Python-Django环境
    JAVA小知识点-Finally和Return的执行关系
    Android自定义组合控件内子控件无法显示问题
    《将博客搬至CSDN》
    idea自动生成try/catch代码块的快捷键
    转:Apache common包 CollectionUtils 使用详解
  • 原文地址:https://www.cnblogs.com/hjy9420/p/4224620.html
Copyright © 2020-2023  润新知