首先切换到usr/local目录

cd /usr/local/

下载tomcat到local目录

wget http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.47/bin/apache-tomcat-7.0.47.tar.gz

解压并删除tar包

tar -zxvf apache-tomcat-7.0.47.tar.gz
rm apache-tomcat-7.0.47.tar.gz

我们可以先让Tomcat跑起来

./apache-tomcat-7.0.47/bin/startup.sh

下载solr到local目录

wget http://archive.apache.org/dist/lucene/solr/4.10.3/solr-4.10.3.tgz

利用上面同样的方式解压并删除tar包

tar -zxvf solr-4.10.3.tgz
rm solr-4.10.3.tgz

这个时候在local目录下就得到了Tomcat和Solr的包,复制solr.war到Tomcat

cp solr-4.10.3/example/webapps/solr.war apache-tomcat-7.0.47/webapps/

因为刚才我们已经启动了Tomcat所以这个时候Tomcat会自动解压solr.war,得到一个solr文件夹。复制扩展依赖包到Tomcat

cp solr-4.10.3/example/lib/ext/* apache-tomcat-7.0.47/webapps/solr/WEB-INF/lib/

复制log4j的配置到classes文件夹,这个文件并不存在需要我们手动去创建

cd apache-tomcat-7.0.47/webapps/solr/WEB-INF/
mkdir classes
cp solr-4.10.3/example/resources/log4j.properties apache-tomcat-7.0.47/webapps/solr/WEB-INF/classes/

接下来在Tomcat里指定solrhome路径,在指定之前我们先准备solrhome和solrcore并做一些配置,我们就将solrhome建在local目录下,并给一个默认的core

mkdir solrhome
cp -r solr-4.10.3/example/solr/* solrhome/

到底做些啥配置呢?在默认的core(collection1)下有个conf文件夹,conf文件夹下面有个solrconfig.xml,通过vi打开它

需要配置的就是上面的这个路径,配置正确的标准就是能根据路径找到contrib和dist,那这两个文件夹在哪儿呢?在solr包下。solr.install.dir是solrhome所在的路径,因为我们的solrhome和solr安装包在同一个目录,所以正确的配置应该是下面的结果

最后一步,在tomcat中指定solrhome的所在路径:

vi apache-tomcat-7.0.47/webapps/solr/WEB-INF/web.xml

2018年1月5号更新:

Solr安全

第一步:/apache-tomcat-7.0.47/conf/tomcat-users.xml

<role rolrename="solr_manager_role"/>
<user username="sa" password="sa" roles="solr_manager_role"/>

第二部:/apache-tomcat-7.0.47/webapps/solr/WEB-INF/web.xml

<!-- solr security start -->

<security-constraint>
<web-resource-collection>
<web-resource-name>Solr Admin</web-resource-name>
<url-pattern>/</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>solr_manager_role</role-name>
</auth-constraint>
</security-constraint>

<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Solr Admin Application</realm-name>
</login-config>

<security-role>
<description>Solr Admin Role</description>
<role-name>solr_manager_role</role-name>
</security-role>
<!-- solr security end -->

6.6版本机以上请参考 http://lucene.apache.org/solr/guide/6_6/basic-authentication-plugin.html

记录CentOS环境下将Solr部署到Tomcat的更多相关文章

  1. CentOS环境下jdk安装部署

    1.准备jdk安装文件: 这里我使用的是 jdk-7u79-linux-x64.tar.gz 2.在 /usr/local 目录下创建 sotfware目录,并上传JDK文件: 解压文件并修改文件夹为 ...

  2. Centos环境下部署游戏服务器-软件安装

    这篇文章主要介绍一下游戏服务器需要安装的软件和需要修改的配置.现介绍下项目,本项目服务器端是c++ + mysql组合,客户端是as写的,需要安装的服务为Mysql,Php,Apache, 以及一个n ...

  3. linux系统Centos环境下搭建SVN服务器及权限配置

    linux系统Centos环境下如何搭建SVN服务器以及svnserve.conf.authz.passwd配置文件详细介绍   至于svn的概念,这里就不做详细阐述了,可以自行百度.简单来讲就是一个 ...

  4. centos环境下创建数据库和表的方法

    centos环境下创建数据库和表的方法 //查询数据库的命令: mysql> SHOW DATABASES; +--------------------+ | Database         ...

  5. 非域环境下使用证书部署数据库(SqlServer2008R2)镜像

    非域环境下使用证书部署数据库(SqlServer2008R2)镜像 前言 部署数据库镜像一般有两种方式域环境下部署http://liulike.blog.51cto.com/1355103/33918 ...

  6. centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复

    centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复 有时候我们会碰到这样的业务场景: 1.将大的数据库恢复到本地进行业务测试 ...

  7. CentOS环境下R语言的安装和配置

    最近在看数据统计和分析,想到了R语言,于是就着手在自己的CentOS环境下进行安装和配置.步骤如下: 1.前往R官网下载安装包. 2.解压压缩包:tar xvzf R-3.2.2.tar.gz 3.进 ...

  8. 在Centos环境下安装兼容Apache2.4高版本SVN服务

    在阿里云Centos环境下,搭建PHP运行环境,PHP选择了php7版本,Mysql选择了5.7版本,Apache选择了2.4版本,在搭建SVN版本控制服务过程中出现了不兼容问题,当前环境下Apach ...

  9. 在win10环境下搭建 solr 开发环境

    在win10环境下搭建 solr 开发环境 2017年05月30日 09:19:32 SegaChen0130 阅读数:1050   在win10环境下搭建 solr 开发环境 安装环境  Windo ...

随机推荐

  1. cxf,两个声明导致 ObjectFactory 类中发生冲突

    说明先,这里不管是client还是server端都是用java语言编写,如有写得不好,望原谅! 问题 http://localhost:8080/WEB-SMVC/cxf/userService?ws ...

  2. canvas图形函数

    function drawStar(cobj,x, y, radius1, radius2, num, drawType, color) {//参数:画笔,圆心X.圆心Y,半径1,半径2,形状边,实心 ...

  3. immutable日常操作之深入API

    写在前面 本文只是个人在熟悉Immutable.js的一些个人笔记,因此我只根据我自己的情况来熟悉API,所以很多API并没有被列举到,比如常规的push/map/filter/reduce等等操作, ...

  4. Solr4.10与tomcat整合并安装中文分词器

    1.solr Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展,并对索引. ...

  5. 小白的Python之路 day4 装饰器前奏

    装饰器前奏: 一.定义: 1.装饰器本质是函数,语法都是用def去定义的 (函数的目的:他需要完成特定的功能) 2.装饰器的功能:就是装饰其他函数(就是为其他函数添加附加功能) 二.原则: 1. 不能 ...

  6. ES6之遍历器(Iterator)

    什么是Iterator?他是一种接口,为各种不同的数据结构提供统一的访问机制,任何数据结构只要部署上Iterator接口就可以完成遍历操作(PS:个人认为他的这个遍历就是c语言里面的指针),他的作用有 ...

  7. iOS APP跳转设置界面以及设置中的其他界面

    1.跳转设置总页面(iOS10+以及之前的都可以用:ios10+ 是跳转到了应用到设置界面) [[UIApplication sharedApplication]openURL:[NSURL URLW ...

  8. MySQL时间操作的系统函数用法

    我要查询获得当天凌晨30分的datetime值的方式:select ADDDATE(CURDATE(), INTERVAL TIME_TO_SEC(TIMEDIFF("00:30:00&qu ...

  9. Noip2016换教室(期望+DP)

    Description 题目链接:Luogu Solution 这题结合了DP和概率与期望,其实只要稍微知道什么是期望就可以了, 状态的构造很关键,\(F[i][j][0/1]\)表示已经到第\(i\ ...

  10. python模拟shell执行脚本

    工作时候需要模拟shell来执行任务,借助包paramkio import paramiko class ShellExec(object): host = '127.0.0.1' port = 36 ...