最近一些园友来咨询solr5.1的配置方式,然后我就去官网下载了个最新版本的solr,发现solr5.0以后solr的下载包里的内容发生的变化,移除和添加了一些文件,这就导致solr的初始配置不一样了,导致一些园友学习solr时不得不下载以前的solr版本进行学习,为了与时俱进不被淘汰,所以的就在这里加一篇solr5.1的配置方式,希望大家少走一些弯路.
1.下载Tomcat与solr并解压(安装前先装jdk)
Tomcat解压后磁盘路径为C:/Program Files/Apache Software Foundation/Tomcat 7.0(路径随意).
2. 在官网上下载solr文件包 我这下载的是solr-5.1.0
将solr部署到Tomcat
a) 将solr-5.1.0/example/example-DIH/下的solr目录复制到Tomcat的根目录下(即C:/Program Files/Apache Software Foundation/Tomcat 7.0/路径下)
注:该路径可随意,出学着最好按照上面的路径,以免出现配置问题,熟练后可复制到任意路径
b) 将solr5.1.0/server/webapps目录下的solr.war拷贝到Tomcat的webapps目录下,此时,启动tomcat,然后该文件夹下会自动生成个solr文件夹
c) 修改Tomcat/webapps/solr/WEB-INF/web.xml,找到 env-entry节点,该节点处于被注释状态,取消注释,改为如下
<env-entry> <env-entry-name>solr/home</env-entry-name> <env-entry-value>C:/Program Files/Apache Software Foundation/Tomcat 7.0/solr</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
注:该路径对应步骤a
d)将solr-5.1.0/server/lib/ext中的jar包copy到tomcat的webapps/solr/WEB-INF/lib下。然后将solr-5.1.0/server/resources/下的log4j.properties也放到webapps/solr/WEB-INF/classes/下,没有classes文件夹就新建一个.
e)将solr-5.1.0/dist下的solr-dataimporthandler-5.1.0.jar与solr-dataimporthandler-extras-5.1.0.jar复制到webapps/solr/WEB-INF/lib下
然后
重新关闭在开启tomcat;
打开浏览器 http://localhost:8080/solr 如果出现以下界面说明安装成功
接下来,我们将solr-5.1.0下的dist和contrib 复制到tomcat根目录下
然后我我们打开步骤a复制过来的文件夹,你会看见如下文件夹
打开这五个文件你你会发现,里面的文件都差不多,这是solr5.0以后的多核心,
然后将这五个文件夹下的conf文件夹下的solrconfig.xml,文件中的
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*/.jar" /> <lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*/.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-/d.*/.jar" /> <lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" regex=".*/.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-clustering-/d.*/.jar" /> <lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" regex=".*/.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-langid-/d.*/.jar" /> <lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*/.jar" /> <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-/d.*/.jar" />
改成如下:
<lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/contrib/extraction/lib" regex=".*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/dist/" regex="solr-cell-/d.*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/contrib/clustering/lib/" regex=".*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/dist/" regex="solr-clustering-/d.*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/contrib/langid/lib/" regex=".*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/dist/" regex="solr-langid-/d.*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/contrib/velocity/lib" regex=".*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/dist/" regex="solr-velocity-/d.*/.jar" /> <lib dir="C:/Program Files/Apache Software Foundation/Tomcat 7.0/dist/" regex="solr-dataimporthandler-/d.*/.jar" />
或者使用相对路径
<lib dir="../../dist/" regex="solr-dataimporthandler-.*/.jar" /> <lib dir="../../contrib/extraction/lib" regex=".*/.jar" /> <lib dir="../../dist/" regex="solr-cell-/d.*/.jar" /> <lib dir="../../contrib/clustering/lib/" regex=".*/.jar" /> <lib dir="../../dist/" regex="solr-clustering-/d.*/.jar" /> <lib dir="../../contrib/langid/lib/" regex=".*/.jar" /> <lib dir="../../dist/" regex="solr-langid-/d.*/.jar" /> <lib dir="../../contrib/velocity/lib" regex=".*/.jar" /> <lib dir="../../dist/" regex="solr-velocity-/d.*/.jar" /> <lib dir="../../dist/" regex="solr-dataimporthandler-/d.*/.jar" />
这里的db文件夹就是4.7.2的collection1文件夹,如果你是一个solr出学着,我建议你先从第一篇文章4.72的配置开始看起,前面的文章都是基于4.7.2配置的,5.1与之前的有点配置文件差别,你可以先学习4.7.2之后在配置5.1.0,这两个仅仅是在初始配置上有很大的差别,但在使用上基本是一样的