1、安装并配置好tomcat
2、在tomcat的目录conf/Catalina/localhost/solr.xml下创建该文件,若Catalina等文件夹不存在则手动创建
文件内容如下:
<?xml version="1.0" encoding="utf-8"?>
<Context docBase="/home/chenzehe/apache-solr-3.6.0/dist/apache-solr-3.6.0.war" debug="0" crossContext="true" >
<Environment name="solr/home" type="java.lang.String" value="/home/chenzehe/tomcat6_solr/solr" override="true" />
</Context>
docBase为solr的war文件,启动tomcat后会被解压到tomcat/webapps/solr下,Environment配置solr.home目录,从solr包中example文件夹下的solr配置文件拷贝过来既可。
3、启动tomcat后,输入http://192.168.0.248:9080/solr/ ,看到成功界面则说明安装成功。
上面配置虽然表面上看成功了,但还有些不完善的地方,如访问路径一直下/solr路径下,访问solr界面http://192.168.0.248:9080/solr/browse 不能访问,下面以别一种方式重新部署。
4、创建文件夹/home/chenzehe/webapps/solr 存放solr项目文件,把上面在放在tomcat/webapps/solr下的文件copy到该文件夹下
5、修改tomcat conf下server.xml文件配置,把端口改为9080,加入 URIEncoding="UTF-8"防止中文搜索乱码,如下:
<Connector port="9080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
在<Host>节点下添加项目配置:
<Context path="" docBase="/home/chenzehe/webapps/solr" debug="0"/>
6、在项目中web.xml文件中配置solr.home路径,编辑web.xml文件,加入如下内容:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/home/chenzehe/webapps/solrhome/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
其中env-enty-value值为solr.home目录。
7、启动tomcat,输入http://192.168.0.248:9080 ,不用输入/solr,既可访问项目。
8、访问搜索界面http://192.168.0.248:9080/browse 失败,原因是solrconfig.xml配置文件中指定的jar包路径不对,从examples中copy过来的solrconfig.xml配置文件中指定jar文件如下:
<lib dir="../../dist/" regex="apache-solr-cell-\d.*\.jar" />
<lib dir="../../contrib/extraction/lib" regex=".*\.jar" />
<lib dir="../../dist/" regex="apache-solr-clustering-\d.*\.jar" />
<lib dir="../../contrib/clustering/lib/" regex=".*\.jar" />
<lib dir="../../dist/" regex="apache-solr-dataimporthandler-\d.*\.jar" />
<lib dir="../../contrib/dataimporthandler/lib/" regex=".*\.jar" />
<lib dir="../../dist/" regex="apache-solr-langid-\d.*\.jar" />
<lib dir="../../contrib/langid/lib/" regex=".*\.jar" />
<lib dir="../../dist/" regex="apache-solr-velocity-\d.*\.jar" />
<lib dir="../../contrib/velocity/lib" regex=".*\.jar" />
注意dir="../../contrib/extraction/lib"这个地址的相对位置是对于$SOLR_HOME/conf/ 来说的,而不是$SOLR_HOME/conf/solrconfig.xml。从解压的solr文件夹中中copycontrib和dist到webapps/solr/bin文件夹下,把上面dir属性值改为绝对路径,指向相应的dist和contrib文件夹:
<lib dir="/home/chenzehe/webapps/solr/bin/dist/" regex="apache-solr-cell-\d.*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/contrib/extraction/lib" regex=".*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/dist/" regex="apache-solr-clustering-\d.*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/contrib/clustering/lib/" regex=".*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/dist/" regex="apache-solr-dataimporthandler-\d.*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/contrib/dataimporthandler/lib/" regex=".*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/dist/" regex="apache-solr-langid-\d.*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/contrib/langid/lib/" regex=".*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/dist/" regex="apache-solr-velocity-\d.*\.jar" />
<lib dir="/home/chenzehe/webapps/solr/bin/contrib/velocity/lib" regex=".*\.jar" />
9、重启动tomcat,输入http://192.168.0.248:9080/browse 访问搜索界面没有报错,但是没有样式,发现该页面中所有连接样式和脚本的文件都指定为solr路径下。
10、修改tomcat配置文件,把项目恢复到solr路径下:
<Context path="/solr" docBase="/home/chenzehe/webapps/solr" debug="0"/>
重启动tomcat,访问http://192.168.0.248:9080/solr/browse 能正常访问。
参考官方wiki:http://go.cxweb.com.cn/solrwiki
欢迎光临 创星网络[分享知识 传递快乐] (http://bbs.cxweb.com.cn/) | Powered by Discuz! X3 |