Tomcat下Solr安装配置

  由于Solr基于java开发,因此Solr在windows及Linux都能较好部署使用,但由于Solr提供了一些用于测试及管理、维护较为方便的shell脚本,因此在生产部署时候建议安装在Linux上,测试时候可以在windows使用。

  Solr是一个基于Lucene的Java搜索引擎服务器。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。Solr 创建的索引与 Lucene 搜索引擎库完全兼容。通过对Solr 进行适当的配置,某些情况下可能需要进行编码,Solr 可以阅读和使用构建到其他 Lucene 应用程序中的索引。此外,很多 Lucene 工具(如Nutch、 Luke)也可以使用Solr 创建的索引。

Windows7安装Solr+Tomcat的方法

  安装环境

  Windows 7 64bit

  Apache-tomcat-8.0.9-windows-x64

  Solr-4.9.0

  JDK 1.8.0_05 64bit

  安装步骤

  Tomcat和JDk的安装在这里就略过。

  注意:solr4.9要求jdk1.7+

  步骤一:

  解压solr-4.9.0到任意文件夹,我解压到D:\Installed Applications\solr-4.9.0\solr-4.9.0目录下。

  步骤二:

  将solr-4.9.0\dist\ solr-4.9.0.war复制到Tomcat webapp/目录下,最好重命名为solr.war。

  步骤三:

  启动Tomcat,会报错,这步只是为了将solr-4.9.0.war解压,所以手动解压放在webapp目录下面也是可行的。

  步骤四:

  方法一:

  打开webapps\solr\WEB-INF\web.xml

  找到:

  这里是需要配置solr/home,只需要修改/put/your/solr/home/here

  这个目录可以自定义,建议就用步骤一解压的目录,这里需要非常注意:在Solr官网的Tutorial里面有如下一段话:

  How Solr Works with Tomcat

  The two basic steps for running Solr in any Web application container are as follows:

  Make the Solr classes available to the container. In many cases, the Solr Web application archive (WAR) file can be placed into a special directory of the application container. In the case of Tomcat, you need to place the Solr WAR file in Tomcat's webapps directory. If you installed Tomcat with Solr, take a look in tomcat/webapps:you'll see the solr.war file is already there.

  Point Solr to the Solr home directory that contains conf/solrconfig.xml and conf/schema.xml. There are a few ways to get this done. One of the best is to define the solr.solr.home Java system property. With Tomcat, the best way to do this is via a shell environment variable, JAVA_OPTS. Tomcat puts the value of this variable on the command line upon startup

  从这里可以看出,指向的目录需要包含conf/solrconfig.xml和conf/schema.xml这两个文件,也就意味着在所指向的目录中需要有conf子目录,我就是因为官网的这段解释,搞了半天没有成功,其实是我理解错了,我认为在solr.solr.home目录下必须要有子目录conf,conf里面包含solrconfig.xml和schema.xml。但是其实conf目录是放在collection1目录下面的,collection是solr的一个Instance实例,solr中可以配置多个collection,可以有独立的配置文件。

  我这边web.xml的配置为:

  solr/homeD:/Installed Applications/solr-4.9.0/solr-4.9.0/examplejava.lang.String

  特别需要注意配置里面使用的是反斜杠"/",而不是windows下默认的"\"。

  这里我是直接指向example文件夹。

  方法二(个人推荐):

  在$TOMCAT_HOME/conf/Catalina/localhost目录下新建solr.xml文件,内容为:

  这边需要注意,override需要设置为false,否则每次启动tomcat都会重新解压war文件覆盖掉之前的配置,或者手动解压后,把context path直接指向文件夹

  步骤五:

  将solr-4.9.0\example\solr目录下的collection1目录整体copy到solr-4.9.0\example目录下。读者可以自己自定义路径,web.xml中定义的,这个指向的目录包含collection1目录就好了。

  步骤六:

  将D:\Installed Applications\solr-4.9.0\solr-4.9.0\example\lib\ext目录下的jar包copy到apache-tomcat-8.0.9\lib目录下,也可以copy到webapps\solr\WEB-INF\lib下,读者可以自行选择(全局和局部的问题而已)。(如果启动还是报错,可以根据提示在solr-4.9.0\dist中找相应的jar包)。

  步骤七:

  打开Tomcat conf目录下的server.xml,找到下面一段代码添加URIEncoding="UTF-8",添加中文支持。

  connectionTimeout="20000"

  redirectPort="8443"

  URIEncoding="UTF-8" />

  步骤八:

  启动Tomcat,打开浏览器输入:http://localhost:8080/solr/admin/,看到启动画面就说明安装成功。

Windows7安装Solr+Tomcat的方法

  总结

  由上面的安装步骤可以看出来,其中步骤四是最核心的一步,这里面需要了解Solr的运行原理:Solr是类似于Http接口的一种服务,它需要在Web容器(这里是Tomcat)中部署,运行后,应用程序用Http请求的方式和Solr交互,包括添加索引、查询等等。所以我们需要在Web容器中部署Solr,并且在Tomcat配置中指明Solr配置的目录。

  在Linux下的安装方法跟Windows下没有大的区别。

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?