一.Solr的定义
Solr是一个独立的企业级搜索应用服务器,它是用Java编写、运行在Servlet容器(如Apache Tomcat或Jetty)上的一个独立的全文搜索引擎。它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
二.程序与solr的交互流程图
如上图所示:将solr.war(solr4版本后是solr-webapp下的webapp)包放在tomcat的webapp目录下,此处提供一个solr的可访问界面,程序通过访问tomcat下solr的界面,根据web.xml的映射,定位操纵和调用solr-home,数据库将数据导入到对应的solr-core中。
三.solr的安装
预装:jdk1.8及以上,tomcat8及以上,否则会报错。
-
在usr/local下单独创建一个solr目录:mkdir solr 在solr目录下下载solr的压缩包并解压:wget https://mirror./apache/lucene/solr/7.7.3/solr-7.7.3.tgz , tar -zxvf solr-7.7.3.tgz -
将solrhome放入/usr/local/solrhome目录下: (1)进入solrhome当前位置:cd /solr-7.7.3/server ,当前server下的solr目录即为solrhome。 (2)将其复制到usr/local下,并将solr改名为solrhome: cp -r solr /usr/local/solrhome -
拷贝web工程:将solr-7.7.3/server/solr-webapp/下的webapp文件夹拷贝到Tomcat的webapps目录下并改成你要用的名字 (在4和更早的版本中会以war包形式存在,需解压war包):cp -r webapp /usr/local/solr/tomcat8/webapps 改名: mv webapp solr7 -
拷贝日志工具相关jar包:将solr-7.7.3/server/lib/ext下的jar包拷贝至上面Tomcat下solr7的/WEB-INF/lib/目录下: cp * /usr/local/solr/tomcat7/webapps/solr7/WEB-INF/lib/ -
拷贝metrics相关jar包:将solr-8.0.0/server/lib下metrics相关jar包也拷贝至/WEB-INF/lib/目录下: cp metrics-* /usr/local/solr/tomcat7/webapps/solr7/WEB-INF/lib/ -
拷贝log4j2配置文件:将solr-8.0.0/server/resource目录中的log4j配置文件拷入web工程目录WEB-INF/classes(自行创建目录): cp log4j* /usr/local/solr/tomcat7/webapps/solr7/WEB-INF/classes -
进入/usr/local/solr/tomcat7/webapps/solr7/WEB-INF目录下,修改web.xml文件:vim web.xml 加入如下配置:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>“你的solrhome位置”</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
注意:要将web.xml中的security-constraint代码全部注释掉,否则会报403错误。
四.启动
在浏览器中输入linux地址 tomcat端口号/solr7/index.html访问成功:
来源:https://www./content-3-772951.html
|