Lucene/Solr搜索引擎开发笔记 - 第2章 Solr安装与部署(Tomcat篇)
一、安装环境
图1-1 Tomcat和Solr的版本
我本机目前使用的Java版本为JDK 1.8,因为Solr 4.9要求Java版本为1.7+,请注意。
二、Solr部署到Tomcat流程
图1-2 Tomcat安装目录
1、如图1-2所示,为Tomcat的解压目录;
图1-3 Tomcat首页
2、在目录E:\apache-tomcat-8.0.9\bin中,找到startup.bat文件,双击该文件,启动Tomcat服务器,等待几秒钟后,在浏览器中输入http://localhost:8080/,如果服务器启动正常的话,则会出现如图1-3所示的界面;
3、在E:\apache-tomcat-8.0.9\conf\server.xml中,找到<Connector>标签,在该标签尾端添加URIEncoding="UTF-8",目的为解决中文搜索乱码,如下代码所示:
connectionTimeout="20000" redirectPort
="8443" URIEncoding="UTF-8"/>
图1-4 solr-4.9.1.war复制粘贴到当前目录,改名为solr.war
图1-5 Tomcat的webapps目录
4、将目录E:\solr-4.9.1\dist中的solr.war文件,复制到E:\apache-tomcat-8.0.9\webapps中,因为我们之前已经启动的Tomcat服务器,所以solr.war会自动解压出solr文件夹,如上图1-5所示;
图1-6 关键文件复制
5、关闭Tomcat服务器(也就是关闭startup.bat启动的那个命令行界面),E:\apache-tomcat-8.0.9\webapps目录下新建文件夹solr_home,然后将E:\solr-4.9.1\example\solr中的文件夹collection1和solr.xml复制到E:\apache-tomcat-8.0.9\webapps\solr_home目录中;
图1-7 配置文件修改solr_home
6、打开文件E:\apache-tomcat-8.0.9\webapps\solr\WEB-INF\web.xml,找到<env-entry>标签,修改代码部分如上图1-7所示;
图1-8 static firstSearcher warming in solrconfig.xml ---> *.*
7、打开E:\apache-tomcat-8.0.9\webapps\solr_home\collection1\conf\solrconfig.xml,将<listener event="firstSearcher" class="solr.QuerySenderListener">标签下内容按图1-8修改;
图1-9 关键目录的复制
8、将E:\solr-4.9.1中的contrib文件夹和dist文件夹复制到E:\apache-tomcat-8.0.9中;
图1-10 配置Solr日志模块
9、将E:\solr-4.9.1\example\lib\ext下的5个jar包复制到E:\apache-tomcat-8.0.9\webapps\solr\WEB-INF\lib中;
图1-11 配置日志输出路径到Tomcat的logs文件夹
10、在E:\apache-tomcat-8.0.9\webapps\solr\WEB-INF文件夹中新建classes文件夹,复制E:\solr-4.9.1\example\resources\log4j.properties文件到classes文件夹中,修改log4j.properties文件,将“log4j.appender.file.File”的值修改为“../logs/solr.log”;
图1-12 Solr在Tomcat中运行成功
11、删除E:\apache-tomcat-8.0.9\webapps文件夹下的solr.war文件,重启Tomcat,在浏览器中输入http://localhost:8080/solr,出现上图1-12所示界面,则表明Solr在Tomcat中已经配置成功;
三、本章总结
通过上一篇文章《Lucene/Solr搜索引擎开发系列 - 第1章 Solr安装与部署(Jetty篇)》,我们知道,Jetty服务器是Solr的默认服务器,只需要将Solr解压缩,启动Jetty服务器,在浏览器中输入http://localhost:8983/solr/就可以运行Solr后台。
为何我们要如此费劲的将Solr配置到Tomcat中呢?原因有以下几点:
1、经过多年的发展,一般企业都使用Tomcat作为开发和部署环境;
2、程序员们对Tomcat的熟悉度,比Jetty要高很多,当Tomcat出现问题,也容易解决;
3、大部分Java Web开发视频,都是基于Tomcat来进行开发讲解,传播范围广;
转载须知:
请尊重本人知识产权和劳动成果,本文可自由转载,请注明出处:
博客网址:http://www.cnblogs.com/zs8861/
联系邮箱:117711668@qq.com
欢迎交流!
Lucene/Solr搜索引擎开发笔记 - 第2章 Solr安装与部署(Tomcat篇)的更多相关文章
- Lucene/Solr搜索引擎开发笔记 - 第1章 Solr安装与部署(Jetty篇)
一.为何开博客写<Lucene/Solr搜索引擎开发笔记> 本人毕业于2011年,2011-2014的三年时间里,在深圳前50强企业工作,从事工业控制领域的机器视觉方向,主要使用语言为C/ ...
- Lucene/Solr搜索引擎开发笔记 - 写作方向调整
今天突然想到一个问题,觉得直接从Solr开始写,如果没有Lucene知识背景的话,看后续的章节还是比较吃力的,所以从下一篇博文开始,我可能会从Lucene开始写作,只要有Java的基础,搞定Lucen ...
- Solr In Action 笔记(1) 之 Key Solr Concepts
Solr In Action 笔记(1) 之 Key Solr Concepts 题记:看了下<Solr In Action>还是收益良多的,只是奈何没有中文版,只能查看英语原版有点类,第 ...
- solr学习(笔记) windows10+jdk1.8+tomcat8环境部署
一:准备环境 1.1 »tomcat8.5下载地址:https://tomcat.apache.org/download-80.cgi 1.2 solr各版本下载地址:http://archive.a ...
- Android开发笔记之《Window下安装Ubuntu双系统,Grub无法显示Window选项》
解决方法是: 在terminal里面输入: sudo update-grub 会找到windows的grub 重启电脑就可以了.
- 吴裕雄--天生自然Django框架开发笔记:Django Nginx+uwsgi 安装配置
Django Nginx+uwsgi 安装配置 使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,需要一个可以稳定而持续的服务器,比如 ...
- Nutch+Lucene搜索引擎开发实践
网络拓扑 图 1 网络拓扑图 安装Java JDK 首先查看系统是否已经安装了其它版本号的JDK,假设有,先要把其它版本号的JDK卸载. 用root用户登录系统. # rpm-qa|grep gcj ...
- 《Clojure编程》笔记 第4章 多线程和并发
目录 背景简述 第4章 多线程和并发 4.0 我的问题 4.1 术语 4.1.1 一个必须要先确定的思考基础 4.2 计算在时间和空间内的转换 4.2.1 delay 4.2.2 future 4.2 ...
- 《Clojure编程》笔记 第2章 函数式编程
目录 背景简述 第2章 函数式编程 背景简述 本人是一个自学一年Java的小菜鸡,理论上跟大多数新手的水平差不多,但我入职的新公司是要求转Clojure语言的.坊间传闻:通常情况下,最好是有一定Jav ...
随机推荐
- c#简易反射调用泛型方法
// 所谓程序集的简单理解,存在不同项目中(不是解决方案),即using前需要引用**.dll 1.调用当前类文件下的方法public List<T> GetByCondition< ...
- linux笔记:文件系统管理-fdisk分区
fdisk命令分区过程: 1.添加新硬盘 2.查看新硬盘: fdisk -l 3.使用fdisk命令分区: fdisk 硬盘设备文件名(如:fdisk /dev/sdb) fdisk交互指令说明: 4 ...
- C++中 接口的定义 COM
首先定义一个虚基类的接口,其中包含虚函数AddRef Release QueryInterface,(MFC 类IUnKnown unknwn.h)分别是增加减去引用计数和查询接口然后定义一个实现类, ...
- 寻找C语言和.NET之间的桥梁
一提到C语言,在偶这个始终的C语言菜鸟眼里,是个神奇的语言.经过了近半世纪的历史,多少技术湮灭在信息时代的长河中,C语言却依然在TIBOE排行榜中笑傲群雄. 本文是谈.NET开发者看来,C语言有什么特 ...
- iOS开发网络篇—文件的上传
iOS开发网络篇—文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代 ...
- Vmware workstation 10 NAT功能总是不正常的原因
原来运行一切正常的VMWARE WORKSTATION 10,突然出现NAT功能不能正常工作的情况. 表现是:如果将虚拟机的网卡设置为NAT模式,可以PING通网关及LAN内的主机,但是PING不通外 ...
- 获取数据库里面最新的ID
你如果新插入的一段资料,你想获取它的ID,就用 “mysql_insert_id()”; 并且要重新定义一个名称
- 初始化脚本(Os_Init_Optimization.sh)
#!/bin/bash #解压缩startup.tar.gz包 cd /tmp && tar -zxf startup.tar.gz #初始化YUM源 rm -rf /etc/yum. ...
- json对象转换为json字符串
今天浏览网页的时候看到这个题也是一道很经典的题目了 var str ='aaaaaaajsdjdfkdkg'; ,]; var obj={}; ;i<str.length;i++){ if(!o ...
- 新策略构思 dual thrust
根据dual truest的策略,因为是针对日线级别的.同理我们可以根据60分钟级别开发出一套策略,等有时间写在下面