在tomcat上面安装solr4.8.0全过程

aiyueqingfeng 2014-07-25

转载请出自出处:http://eksliang.iteye.com/blog/2096478

      首先solr是一个基于java的web的应用,所以安装solr之前必须先安装JDK和tomcat,我这里就先省略安装tomcat和jdk了

       

第一步:当然是下载去官网上下载最新的solr版本,下载地址:http://lucene.apache.org/solr/

 

            

        第二步:下载的下来的包应该是这个样子的,solr-4.8.0.tgz,首先解压该包;

                   如果是在linux上面:tar -zxvf solr.tgz 用这个命令解压;

                   如果是windows环境上面直接解压就行了;

                      

        傻瓜式安装:

             将.solr-4.8.0\example\webapps目录下的solr.war包复制到webapps下面

       解压solr.war包,war包的格式跟zip的格式是一样的,如果是在window上面直接用好压那种工具便可以解压,如果是在linux上面:用这个命令进行解压uzip solr.war。

    进入解压后solr\WEB-INF目录,编辑web.xml找到如下节点,配置你的solr/home目录,这个目录就是你solr的用户目录(反正江湖人士是这么称呼这个目录的)。自己确定你的solr的用户目录,如下便是我的目录

<env-entry>
     <env-entry-name>solr/home</env-entry-name>
     <env-entry-value>/user/local/solr/home</env-entry-value>
     <env-entry-type>java.lang.String</env-entry-type>
</env-entry>

 

   网上很多文档配到这里就叫你启动solr所在的tomcat服务器,这个时候启动当然起不来,因为少了包(solr4.0后将日志包抽取出来,没有打包到solr.war包中)这里有两种方式加载这些包

   a) 将solr-4.8.0\example\lib\ext下面的所有包复制到solr的web-inf/lib目录下 

   b)  直接这些包复制到tomcat容器中的${tomcat_home}\lib下面(官网推荐这么干)

   

   此时启动还是会报错,因为此时的solr还没有core,这个时候你得将solr自带的core实例复制到你上面配置,solr用户目录,例如我就是这么做的将example\solr目录下的所有文件复制到你的 /user/local/solr/home目录下面

  启动tomcat,用http://localhost:8080/solr肯定没有问题,多年实践不可能出问题。

   

   企业级安装:

  上面的安装你可以再测试时这么安装,但是如果你的solr应用是部署在生成环境上面的,怎么弄,当然得使用tomcat的虚拟目录安装,记住这种方式,养成好习惯

   

      将.solr-4.8.0\example\webapps目录下的solr.war包复制到webapps下面

       解压solr.war包,war包的格式跟zip的格式是一样的,如果是在window上面直接用好压那种工具便可以解压,如果是在linux上面:用这个命令进行解压uzip solr.war。

       tomcat的虚拟目录安装,有两种方式,我这里介绍简单一种吧!

      进入你的tomcat/conf/目录下,编辑你的server.xml文件,找到host节点,

      加上如下代码,如下代码是我的配置,以前听过淘宝的专家培训,他们就是怎么干的!

   

<Host name="localhost"  appBase="webapps" unpackWARs="true" 
	autoDeploy="true">
	<Context path="/solr" docBase="/usr/solrCloud/tomcat1/display/solr.war" 
			debug="0" privileged="true">
		<Environment  name="solr/home" type="java.lang.String"
			value="/usr/solrCloud/tomcat1/display/solr/home" override="true"/>
	</Context>

 
        简单解释一下, path:指定访问该Web应用的名称  就是:http://locahost:8080/solr的红色部分

                         docBase:指定Web应用的文件路径;如果是war包,必须加上后缀

                         下面的<Environment>节点就是设置solr的用户目录

 为了你读的流畅,允许我复制上面的原话

    网上很多文档配到这里就叫你启动solr所在的tomcat服务器,这个时候启动当然起不来,因为少了包(solr4.0后将日志包抽取出来,没有打包到solr.war包中)这里有两种方式加载这些包

   a) 将solr-4.8.0\example\lib\ext下面的所有包复制到solr的web-inf/lib目录下 

   b)  直接这些包复制到tomcat容器中的${tomcat_home}\lib下面(官网推荐这么干)

   

   此时启动还是会报错,因为此时的solr还没有core,这个时候你得将solr自带的core实例复制到你上面配置,solr用户目录,例如我就是这么做的将example\solr目录下的所有文件复制到你的/usr/solrCloud/tomcat1/display/solr/home目录下面

   如果你是按照我的操作步骤来弄的,此时启动solr所在的tomcat是觉对没有任何问题的。

    

 

 

 

 

相关推荐

lionelf / 0评论 2020-07-28