http://blog.csdn.net/yerenyuan_pku/article/details/72874134

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。 
Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。 
对于淘淘商城来讲,由于网上商城的搜索频率特别高,我们很有必要把搜索单独做成一个服务,这样做的好处是可以针对该服务做扩展,做成服务集群等,其它模块都可以调用Solr服务。 
下面我将告诉大家如何在Linux系统上搭建单机版的Solr服务器。

新建一台虚拟机

关于如何新建一台虚拟机,我之前已写过一篇文章,如果大家还有不会的,可以翻阅使用VMware安装CentOS6.7这篇文章。

安装JDK

由于Solr是由Java开发的,因此安装Solr之前需要安装JDK,关于如何在Linux系统上安装JDK,我的Linux系统上安装JDK这篇文章已经说的很清楚了,我不想再多费口舌。

安装Solr

下载Solr

首先我们肯定是要下载Solr的压缩包的,我下载的是solr-4.10.3.tgz.tgz,如下图所示。 

把Solr的压缩包上传到Linux系统

怎样将文件上传到Linux系统上,我想我已经说的要吐了,所以这儿不再浪费口舌。与以往一样,我把solr-4.10.3.tgz.tgz上传到了用户主目录(即root)下,如下图所示。 

解压缩Solr安装包

使用tar zxf solr-4.10.3.tgz.tgz命令将Solr的压缩包解压缩到用户主目录(即root)下。 
 
解压完之后,可以看到解压后的solr-4.10.3目录。我们进入到solr-4.10.3目录下,可以看到Solr的所有文件目录,如下图所示。其中bin目录使用jetty容器可以启动Solr服务,但是我们一般不用这个,contrib目录下存放的是扩展包,我们一般也不用。 

我们看看dist目录下的内容,如下图所示,可以看到solr-4.10.3.war,这个war包结合tomcat进行使用,solr-solrj-4.10.3.jar是我们的Solr客户端。 

我们再看下example目录,这个目录下有一个很重要的目录,那就是solr目录,这个目录下存放的都是Solr很重要的文件。 

安装tomcat

首先我们肯定是要下载tomcat的压缩包的,我下载的是apache-tomcat-7.0.47.tar.gz,如下图所示。 
 
下载完之后,将其上传到Linux系统上,仍与以往一样,我把apache-tomcat-7.0.47.tar.gz上传到了用户主目录(即root)下,如下图所示。 

接着使用tar zxf apache-tomcat-7.0.47.tar.gz命令将tomcat的压缩包解压缩到用户主目录(即root)下,解压完之后,即可看到解压后的apache-tomcat-7.0.47目录。 

紧接着我们在/usr/local目录下新建一个solr目录,如下图所示。 
 
然后我们将解压好的的apache-tomcat-7.0.47目录复制一份到/usr/local/solr/目录下并重命名为tomcat,如下图所示,进入/usr/local/solr/tomcat目录之后即可看到我们非常熟悉的东西了。 

Solr与tomcat结合

我们将Solr的war包放到tomcat的webapps目录下并命名为solr.war,如下图所示,进入/usr/local/solr/tomcat/webapps目录之后即可看到solr.war包。 

下面对solr.war进行解压,解压的方式是启动tomcat,并且可以是使用tail -f logs/catalina.out命令查看启动日志,如下图所示。 

提示:tail:从文件尾部读取文件内容信息;-f:循环读取。 
启动tomcat之后,我们到webapps目录下查看,可以看到多了一个solr的目录,说明solr.war已经解压好了,如下图所示。 

下面我们删掉webapps目录下的solr.war,但是前提是先关闭掉tomcat,然后再删除(如果不关闭tomcat就删除solr.war的话,solr文件夹也会被删除),如下图所示。 

下面我们将solr-4.10.3/example/lib/ext/目录下的所有jar包拷贝到/usr/local/solr/tomcat/webapps/solr/WEB-INF/lib目录中,如下图所示。 

紧接着将solr-4.10.3/example目录下的solr文件夹复制到/usr/local/solr/目录下并且重命名为solrhome,如此一来,/usr/local/solr/目录下面就会有solrhome和tomcat这两个目录了,如下图所示。 
 
下面我们需要修改/usr/local/solr/tomcat/webapps/solr/WEB-INF目录下的web.xml文件,我们要把web.xml文件当中用红框标注的这段配置的注释去掉,并修改<env-entry-value>的值为我们solrhome的目录,如下图所示。

检测Solr是否安装成功

经过上面的配置,单机版的Solr我们便配置完了,下面我们启动tomcat并使用tail -f logs/catalina.out命令查看启动日志,如下图所示。 

我们要想通过在浏览器地址栏中输入http://虚拟机ip地址:8080这样的url地址来访问tomcat,需要设置Linux的防火墙,之前我已讲过,因为Linux的防火墙默认只对外开放了一个22的端口,其他的端口都没打开。所以你需要把它的防火墙设置一下,让它对tomcat的8080端口号放行。 具体做法是:使用cd ~命令切换到当前用户主目录(即root)下,然后使用如下命令来设置Linux的防火墙,使其对tomcat的8080端口号放行。

/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
/etc/rc.d/init.d/iptables save

其中,/etc/rc.d/init.d/iptables save命令是将这个设置永久地保存到Linux的防火墙中。 
接下来,我们到浏览器地址栏中输入http://虚拟机ip地址:8080/solr/即可访问到Solr的管理页面了,如下图所示。 

 

(转)淘淘商城系列——Solr的安装的更多相关文章

  1. (转) 淘淘商城系列——Redis的安装

    http://blog.csdn.net/yerenyuan_pku/article/details/72849612 通过上文的学习,我相信大家已经将首页的轮播图展示出来了,接下来我们将进入一个新的 ...

  2. (转)淘淘商城系列——Solr集群搭建

    http://blog.csdn.net/yerenyuan_pku/article/details/72957201 我们之前做的搜索使用的是Solr的单机版来实现的,正是由于我们现在商品数据量不多 ...

  3. (转)淘淘商城系列——zookeeper单机版安装

    http://blog.csdn.net/yerenyuan_pku/article/details/72717744 这篇文章,我单独来说一下zookeeper如何安装.在实际开发中,zookeep ...

  4. (转) 淘淘商城系列——Redis集群的搭建

    http://blog.csdn.net/yerenyuan_pku/article/details/72860432 本文我将带领大家如何搭建Redis集群.首先说一下,为何要搭建Redis集群.R ...

  5. (转) 淘淘商城系列——使用FastDFS-Client客户端进行上传图片的测试

    http://blog.csdn.net/yerenyuan_pku/article/details/72804018 不久之前,我们实现了商品的类目选择这个功能,但这只是万里长征的第一步,我们还有很 ...

  6. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis)【第八天】(solr服务器搭建、搜索功能实现)

    https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...

  7. (转)淘淘商城系列——中文分析器IK-Analyzer的使用

    在Solr中默认是没有中文分析器的,需要手工配置,配置一个FieldType,在FieldType中指定使用的中文分析器.另外,Solr中的字段(即业务域)必须先定义后使用.下面我们先把中文分析器配好 ...

  8. (转)淘淘商城系列——使用maven构建工程

    http://blog.csdn.net/yerenyuan_pku/article/details/72669269 开发工具和环境 这里,我统一规范一下淘淘商城的开发工具和环境,如下: Eclip ...

  9. (转) 淘淘商城系列——CMS内容管理系统工程搭建

    http://blog.csdn.net/yerenyuan_pku/article/details/72825801 淘淘商城系列——CMS内容管理系统工程搭建 上文我们一起搭建了表现层中的商城门户 ...

随机推荐

  1. ios学习8_KVC和字典转模型

    Key Value Coding是cocoa的一个标准组成部分,它能让我们能够通过name(key)的方式訪问属性,某些情况下极大地简化了代码.可称之为cocoa的大招. 例如以下的样例: 使用KVC ...

  2. ibatis 入门

     iBatis 简单介绍: iBatis 是apache 的一个开源项目.一个O/R Mapping 解决方式,iBatis 最大的特点就是小巧.上手非常快.假设不须要太多复杂的功能.iBatis ...

  3. Linux VSFTP服务器

    Linux VSFTP服务器 一.Linux FTP服务器分类: <1>wu-ftp <2>proftp=profession ftp <3>vsftp=very ...

  4. BestCoder Round #56 /hdu5464 dp

    Clarke and problem 问题描述 克拉克是一名人格分裂患者.某一天,克拉克分裂成了一个学生,在做题. 突然一道难题难到了克拉克,这道题是这样的: 给你nn个数,要求选一些数(可以不选), ...

  5. java中间变量缓存机制

    public class Demo { public static void main(String[] args){ method_1(); method_2(); } private static ...

  6. POJ2352 star

    传送门 这道题有个非常好听的名字,求二维偏序! 听起来似乎很高端,但就是让求满足对于每个i,xi < xj && yi < yj的个数. 这道题特别良心,给的顺序都是y递增 ...

  7. SPOJ OTOCI 动态树 LCT

    SPOJ OTOCI 裸的动态树问题. 回顾一下我们对树的认识. 最初,它是一个连通的无向的无环的图,然后我们发现由一个根出发进行BFS 会出现层次分明的树状图形. 然后根据树的递归和层次性质,我们得 ...

  8. 杂项:game_navigation

    ylbtech-杂项:game_navigation 1.返回顶部 1. 2. 2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处: ...

  9. Nginx配置try_files实践一

    参考资料: http://linuxplayer.org/2013/06/nginx-try-files-on-multiple-named-location-or-serverhttp://stac ...

  10. 测试DNS服务的命令

    测试DNS服务的命令 dig dig用于测试dns系统,因此不会查询hosts文件进行解析. dig - DNS lookup utility dig [@global-server] [domain ...