zoukankan      html  css  js  c++  java
  • 利用SOLR搭建企业搜索平台 之一(运行solr)

    在网络上找了很多的关于solr的资料,发现非常的不全面,即使就是官方的wiki,也是如此!

    基于现阶段正在研究的solr应用,陆续的会分享我的一些经验!

    今天要说的是: 怎么跑起来!

    1》 首先下载好solr,我用的是 solr1.3,下载地址:
    windows版本http://labs.xiaonei.com/apache-mirror/lucene/solr/1.3.0/apache-solr-1.3.0.zip
    linux版本http://labs.xiaonei.com/apache-mirror/lucene/solr/1.3.0/apache-solr-1.3.0.tgz

    2》准备运行容器,我用的是tomcat6.0.20.如果是玩的话,也可以不用准备专门的容易,你只需解压好solr的下载包,找到 example文件夹,然后运行 start.jar。具体指令:java -jar start.jar做应用的时候,不建议采用该方式。该方式内部包含了jetty!

    3》有关tomcat的使用,不是本文的重点,如果你有问题,请参见tomcat的使用。解压好tomcat,将solr包下面的dist文件夹中的apache-solr-1.3.0.war 拷贝到 tomcat的webapps,并且改名为 solr.war。

    4》新建一个 solr-tomcat文件夹,我是把这个文件夹建立在C盘根目录,你可以采用同样方式,也可以不这样,放哪由你决定。 建立好该文件夹以后,在把它下面在建立一个solr文件夹,把solr包里面的example"solr文件夹下面的所有文件放入到 solr里面。

    5》最后一步 配置 solr.home,可以有三种方式。
      
       1)基于当前路径的方式
          这种情况需要在c:"solr-tomcat"目录下去启动tomcat,Solr查找./solr,因此在启动时候需要切换到c:"solr-tomcat"
       2)基于环境变量
          windows在环境变量中建立solr.home,值为c:"solr-tomcat
          linux在当前用户的环境变量中(.bash_profile)或在catalina.sh中添加如下环境变量
    export JAVA_OPTS="$JAVA_OPTS -Dsolr.solr.home=/opt/solr-tomcat/solr"
        3)基于JNDI
           在tomcat的conf文件夹建立Catalina文件夹,然后在Catalina文件夹中在建立localhost文件夹,在该文件夹下面建立solr.xml,其中内容:
    Xml代码
    1. <Context docBase="c:"tomcat"webapps"solr.war" debug="0" crossContext="true" >  
    2.       <Environment name="solr/home" type="java.lang.String" value="c:/solr-tomcat/solr" override="true" />  
    3. </Context>  
    <Context docBase="c:"tomcat"webapps"solr.war" debug="0" crossContext="true" >       <Environment name="solr/home" type="java.lang.String" value="c:/solr-tomcat/solr" override="true" /> </Context>


    问题描述:个人发现的一个问题,就是如果配置好JNDI的话,然后在tomcat的bin文件夹下面启动 tomcat的话,会在tomcat的bin下面建立solr文件夹,这个文件夹中主要存放的索引文件。 本来这些东西应该放入c:"solr-tomcat"solr。如果你不想出现这种情况的话,请使用基于当前路径的方式。

    6》打开浏览器,请看看能否访问该服务。如果能够访问,恭喜您跑起来了。
  • 相关阅读:
    清除控件某个事件的所有响应函数
    docker常用命令
    WPF 如何自定义一个弹框
    C#目录:藏锋
    杂谈001:晨曦Dawn的重新连接
    SpringBoot-08:SpringBoot采用json的方式实现前后台通用的配置文件
    Mysql:存储过程游标不进循环的原因详解
    Java中如何创建一个确保唯一的名字,文件名
    C#:设置CefSharp的一些参数,比如忽略安全证书
    C#:在AnyCPU模式下使用CefSharp
  • 原文地址:https://www.cnblogs.com/wycg1984/p/1567586.html
Copyright © 2011-2022 走看看