1.1、solr 介绍和安装第一个core

来源:互联网 发布:长沙软件学校 编辑:程序博客网 时间:2024/06/05 15:55

站内搜索技术的选型

1、Lucene:可以实现站内搜索。Lucene是一个工具包,如果实现全文检索功能需要大量的开发工作,还需要我们自己来实现搜索的优化、索引库的优化、索引库的集群。不推荐使用。

使用搜索引擎实现站内搜索,可以使用谷歌、百度实现站内搜索。实现简单,但是索引库无法维护,受制于搜索引擎。

2、Solr:全文检索的服务器。只需要配置不需要二次开发。提供了完整的查询优化方案以及集群方案。推荐使用此技术。

3、Solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中,Solr 索引的实现方法很简单,用 POST 方法向 Solr 服务器发送一个描述 Field 及其内容的 XML 文档,Solr根据xml文档添加、删除、更新索引 。Solr 搜索只需要发送 HTTP GET 请求,然后对 Solr 返回Xml、json等格式的查询结果进行解析,组织页面布局。Solr不提供构建UI的功能,Solr提供了一个管理界面,通过管理界面可以查询Solr的配置和运行情况。

 

  1. Solr和lucene的区别

1、Lucene是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,Lucene提供了完整的查询引擎和索引引擎,目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者以Lucene为基础构建全文检索引擎。

2、 Solr的目标是打造一款企业级的搜索引擎系统,它是一个搜索引擎服务,可以独立运行,通过Solr可以非常快速的构建企业的搜索引擎,通过Solr也可以高效的完成站内搜索功能。

 

下载地址

http://lucene.apache.org/solr/downloads.html

1、solr-6.6.0\server\solr-webapp\下的webapp文件夹,复制到:Tomcat9.0的安装目录下\webapps\文件夹下,重命名为:solr(你可以自定义名字)

 

2、jar包移动

1、solr-6.6.0\server\lib\ext\所有jar包,复制到:Tomcat9.0的安装目录下\webapps\solr\WEB-INF\lib\文件夹下


 

2、solr解压包:solr-6.6.0\server\lib\metrics-*.jar包(所有匹配的),复制到:Tomcat9.0的安装目录下\webapps\solr(步骤1,我创建的文件夹)\WEB-INF\lib\文件夹下

 

3、olr-6.6.0\dist\solr-dataimporthandler-*.jar包(所有匹配的),复制到:Tomcat9.0的安装目录下\webapps\solr(步骤1,我创建的文件夹)\WEB-INF\lib\文件夹下

 

3、日志文件log4j.properties

1、solr-6.6.0\server\resources\log4j.properties,复制到:Tomcat 9.0的安装目录下\webapps\solr\WEB-INF\classes(这个文件夹需要创建)\文件夹下

4、建立solrhome文件夹

1、Tomcat 9.0的安装目录下\webapps\solr】下新建一个文件【solrhome(文件夹名称可以任意命名)】,将【solr-6.0.0\server\solr】下的所有文件拷贝到刚刚创建 的solrhome中。

 

5、修改tomcat中的web.xml

 

<env-entry>

<env-entry-name>solr/home</env-entry-name>

<!--这个节点需要修改为solrhome的路径-->

<env-entry-value>D:\ProgramFiles\Study\tomcat9\webapps\solr\solrhome </env-entry-value>

<env-entry-type>java.lang.String</env-entry-type>

</env-entry>

 

6、浏览器中运行solr:http://localhost:8080/solr/index.html,然后你会看到:304 or 403错误

1、Tomcat 9.0的安装目录下\webapps\solr\WEB-INF\web.xml,下面的代码是注释状态,即可解决304 or 403错误

 

<!--

<security-constraint>

<web-resource-collection>

<web-resource-name>Disable TRACE</web-resource-name>

<url-pattern>/</url-pattern>

<http-method>TRACE</http-method>

</web-resource-collection>

<auth-constraint/>

</security-constraint>

<security-constraint>

<web-resource-collection>

<web-resource-name>Enable everything but TRACE</web-resource-name>

<url-pattern>/</url-pattern>

<http-method-omission>TRACE</http-method-omission>

</web-resource-collection>

</security-constraint>

-->

2、开始访问

 

7、添加第一个core

1.进入到solrhome文件夹,建立一个文件夹core,进入到server\solr\configsets\sample_techproducts_configs 文件夹,将此文件夹下的conf 目录拷贝到刚刚建立的core的文件夹下

 

 

2、 在浏览器中输入http://localhost:8080/solr/index.html,进入solr管理页面,点击左侧的add core,在name 和instanceDir下都输入core(在步骤1中取得名称) ,

 

 

3、添加完成会显示下面的

3、然后在进入到\cores目录,此时会发现多了一个data文件夹和一个properties文件,如图:

1、data目录,用于存储索引文件,

2、core.properties文件用于存放core的配置信息