本人上周五刚刚配置了一遍centos下配置solr5.3版本,综合借鉴并改进了一些教程,贴出如下

单位使用内网,本教程暂无截图,抱歉

另,本人是使用.net编程调用solr的使用的是solrnet,在此推荐一下

首先将软件包上传到/tmp目录下

需要文件如下

jdk-8u60-linux-x64.gz

apache-tomcat-7.0.64.tar.gz

solr-5.3.0.tgz

ik分词器、拼音分词器:

IKAnalyzer-5.0.jar
solr-analyzer-ik-5.1.0.jar
pinyin4j-2.5.0.jar
analyzer-pinyin-lucene-5.1.0.jar
analyzer-pinyin-solr-5.1.0.jar

ik分词器需要ext.dic(字典) stopword.dic(排除词) IKAnalyzer.cfg.xml(配置)

一、 jdk安装
[root@svn-server /]# cd /tmp/
[root@svn-server /]#tar zxvf jdk-8u60-linux-x64.gz
[root@svn-server /]#mv jdk1.8.0_60 /usr/
[root@svn-server /]#vi /etc/profile
在最后一行复制以下代码添加如下内容:
JAVA_HOME=/usr/jdk1.8.0_60/
CLASSPATH=.:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
保存退出(:wq!)后,执行下面命令生效:
source /etc/profile

二、 tomcat安装
1、将tomcat包减压到tmp目录下:
[root@svn-server tmp]tar zxvf apache-tomcat-7.0.64.tar.gz
将tomcat包移动到/usr/local/tomcat 下:
[root@svn-server tmp]mv apache-tomcat-7.0.64 /usr/local/tomcat

2、修改tomcat的server配置,加上utf-8
[root@svn-server tmp]vim /usr/local/tomcat/conf/server.xml

新增URIEncoding="UTF-8"
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>

3、tomcat 加账号
vi /usr/local/tomcat/conf/tomcat-users.xml
倒数第二行回车添加如下:
<user username="admin" password="admin" roles="manage-gui" />

4、启动tomcat,并测试访问
[root@svn-server tmp]/usr/local/tomcat/bin/startup.sh
访问 localhost:8080/manager/html 输入账号admin密码admin成功进入

5、需要注意,若防火墙端口未开启需要开启相应端口
[root@svn-server tmp]vi /ect/sysconfig/iptables
在iptables中加一行端口数据,并重启iptables
[root@svn-server tmp]service iptables stop
[root@svn-server tmp]service iptables start

三、安装solr
1、解压solr
[root@svn-server tmp]tar -zxvf solr-5.3.0.tgz
2、将solr包移动到opt目录下:
[root@svn-server tmp]mv /tmp/solr-5.3.0 /opt/solr
3、把server/solr-webapp中的webapp复制到tomcat的webapps下,并重命名为solr
[root@svn-server tmp]cp -r /opt/solr/server/webapps/webapp /usr/local/tomcat/webapps/solr

4、修改solr home配置(注意:要把这段内容的注释去掉,否则不生效):
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/opt/solr/server/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>

将实例的core拷一个到solrhome,并命名为自己的名字(我的叫qdfs)
cp -r /opt/solr/example/example-DIH/solr/solr /opt/solr/server/solr/qdfs

5、复制solr/server/lib/ext下的jar包到tomcat的solr web的WEB-INF/lib/下:
[root@svn-server tmp]cp /opt/solr/example/lib/ext/*.jar /usr/local/tomcat/webapps/solr/WEB-INF/lib/
将dist\solrj-lib的jar 拷到 tomcat\lib
cp /opt/solr/dist/solrj-lib/*.jar /usr/local/tomcat/lib/

6、在tomcat solr下创建classes,并把example/resources/log4j.properties复制到classes中:
[root@svn-server tmp]mkdir -p /usr/local/tomcat/webapps/solr/WEB-INF/classes
[root@svnserver tmp]cp /opt/solr/server/resources/log4j.properties /usr/local/tomcat/webapps/solr/WEB-INF/classes/

四、配置实例core(我的叫qdfs)
1、创建索引文件夹data
[root@svn-server tmp]mkdir /opt/solr/server/solr/data

2、修改solrconfig
[root@svn-server tmp]vi /opt/solr/server/solr/qdfs/conf/solrconfig.xml
把<lib dir="{solr.instal.dir.....注释掉。因为不是使用solr自带的启动
设置solrdata地址
<dataDir>${solr.data.dir:/opt/solr/server/solr/data}</dataDir>

3、配置实例需要的jar包,也可通过配置上一步solrconfig中lib节点实现同样作用,但效果不太稳定
[root@svn-server tmp]cp /opt/solr/contrib/analysis-extras/lib/*.jar /usr/local/tomcat/webapps/solr/WEB-INF/lib/

4、修改schema,配置字段分词器
[root@svn-server tmp]vi /opt/solr/server/solr/qdfs/conf/schema.xml

文档最后面加上ik分词器配置
<!--IK分词器-->
<fieldType name="text_ik" class="solr.TextField">
<analyzer type="index">
<tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="false"/>
<filter class="org.apache.lucene.analysis.pinyin.solr5.PinyinTokenFilterFactory" firstChar="false" minTermLength="2" />
<filter class="org.apache.lucene.analysis.pinyin.solr5.PinyinNGramTokenFilterFactory" nGramChinese="false" nGramNumber="false" />

</analyzer>
<analyzer type="query">
<tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="false"/>
<filter class="org.apache.lucene.analysis.pinyin.solr5.PinyinTokenFilterFactory" firstChar="false" minTermLength="2" />
<filter class="org.apache.lucene.analysis.pinyin.solr5.PinyinNGramTokenFilterFactory" nGramChinese="true" nGramNumber="true" />
</analyzer>
</fieldType>

在field节点中配置
<field name="text_ik" type="text_ik" indexed="true" stored="true"/>

五、ik分词器配置
1、将ik分词器的jar拷入lib,solr5.x版本正常的ik分词器、拼音分词器不好用,使用的是益达大神博客下载的。大概需要如下jar
IKAnalyzer-5.0.jar
solr-analyzer-ik-5.1.0.jar
pinyin4j-2.5.0.jar
analyzer-pinyin-lucene-5.1.0.jar
analyzer-pinyin-solr-5.1.0.jar

[root@svn-server tmp]cp /tmp/solr_jars/*.jar /usr/local/tomcat/webapps/solr/WEB-INF/lib/

2、ik分词器需要ext.dic(字典) stopword.dic(排除词) IKAnalyzer.cfg.xml(配置)的几个文件拷入solrweb下
[root@svn-server tmp]mkdir /usr/local/tomcat/webapps/solr/WEB-INF/classes
将ext.dic stopword.dic IKAnalyzer.cfg.xml拷入
编辑IKAnalyzer.cfg.xml中ext.dic的注释放开

六、测试

注意solr网站使用angularjs,需要支持html5的浏览器才可正常访问。

访问localhost:8080/solr,能够成功访问。

点击Core Admin,点击AddCore,输入name:qdfs, InstanceDir:qdfs,提交数据。

访问ocalhost:8080/solr#/qdfs/analysis, fieldType选择刚才添加的text_ik 测试分词效果

参考链接:

Linux(CentOS)下完美部署Solr 搜索引擎 http://www.linuxidc.com/Linux/2014-03/98024.htm

跟益达学Solr5之使用IK分词器 http://iamyida.iteye.com/blog/2220474

跟益达学Solr5之拼音分词[改进版] http://iamyida.iteye.com/blog/2240657

linux环境下配置solr5.3详细步骤的更多相关文章

  1. 阿里云ECS服务器Linux环境下配置php服务器(二)--phpMyAdmin篇

    上一篇讲了PHP服务器的基本配置,我们安装了apache,php,还有MySQL,最后还跑通了一个非常简单的php页面,有兴趣的朋友可以看我的这篇博客: 阿里云ECS服务器Linux环境下配置php服 ...

  2. linux环境下配置虚拟主机域名

    linux环境下面配置虚拟主机域名 第一步:在root目录下面(即根目录)ls(查看文件)cd进入etc目录find hosts文件vi hosts 打开hosts文件并进行编辑在打开的文件最下面添加 ...

  3. 如何在linux环境下配置环境变量

    jdk下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 在linux环 ...

  4. [Apache手册]Linux环境下配置Apache运行cgi

    CGI动态页面 相关模块 相关指令 mod_alias mod_cgi AddHandler Options ScriptAlias CGI(公共网关接口)定义了web服务器与外部内容生成程序之间交互 ...

  5. Linux环境下配置JDK,java环境

    1.查看Linux自带的JDK是否已安装 # java -version 2. 查看JDK信息 # rpm -qa | grep java 显示: java-x.x.x-gcj-compat-x.x. ...

  6. Linux环境下配置及启动Hadoop(伪集群)

    1.下载tag软件包后,我习惯放到software文件夹下,并建立app文件夹2.通过tar -zxvf hadoop-2.6.0-cdh5.7.0.tar.gz -C ~/app/ 命令解压到app ...

  7. Linux环境下配置eclipse,以及创建maven工程

    一:maven的安装 1.安装配置maven环境变量 2.验证 二:eclipse的安装 3.解压配置eclipse 4.启动eclipse,必须在虚拟机的eclipse下启动 5.结果 三:修改配置 ...

  8. 011 Linux环境下配置eclipse,以及创建maven工程

    一:maven的安装 1.安装配置maven环境变量 2.验证 二:eclipse的安装 3.解压配置eclipse 4.启动eclipse,必须在虚拟机的eclipse下启动 5.结果 三:修改配置 ...

  9. linux环境下配置mysql双主复制

    简单来说,双主复制就是让两台mysql服务器中的数据保持同步,可以用来实现灾备和负载均衡 主机1 IP:192.168.200.128 主机2 IP:192.168.200.131 两台主机系统均为c ...

随机推荐

  1. MacOS changed System Integrity Protection status

    禁止 System Integrity Protection 按住 command + R 重启系统 进入单用户模式 启动bash工具: 输入: csrutil disable 输入:reboot 启 ...

  2. JS 中的事件绑定、事件监听、事件委托

    事件绑定 要想让 JavaScript 对用户的操作作出响应,首先要对 DOM 元素绑定事件处理函数.所谓事件处理函数,就是处理用户操作的函数,不同的操作对应不同的名称. 在JavaScript中,有 ...

  3. 移动端自动化环境搭建-Robot Framework的安装

    A.安装依赖 RF框架,robotframework本身. B.安装过程 可以通过下载 exe 程序进行安装,Robot Framework 分别提供了,win-amd64.exe 和 win32.e ...

  4. TeXmacs 中输入狄拉克 braket 符号

    TeXmacs的数学模式下,默认会对括号进行自动补齐.这也导致输入狄拉克 braket 符号时得到的可能不是你想要的结果.经测试,可用以下输入方式输入 (以下 _ 表示光标所在位置,Tab代表Tab键 ...

  5. QRCode二维码生成

    pom配置 <dependency> <groupId>com.github.cloudecho</groupId> <artifactId>qrcod ...

  6. 由python为入口回顾C++的lambda

    lambda是一种匿名函数,python  lambda可以使简单的函数简洁的表达,,C++的lambda使类似嵌套函数的功能得以实现 python的lambda lambda [arg1[,arg2 ...

  7. bootstrap源码分析----栅格系统

    Bootstrap 提供了一套响应式.移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列. bootstrap通过媒体查询解决不同分辨率屏幕下,页面主内 ...

  8. jquery仿淘宝规格颜色选择效果

    jquery实现的仿淘宝规格颜色选择效果源代码如下 jquery仿淘宝规格颜色选择效果 -收缩HTML代码 运行代码 [如果运行无效果,请自行将源代码保存为html文件运行] <script t ...

  9. http协议get、post请求分析及用HttpRequester测试的报错及可能原因

    1.get.post区别 Get Post 获取/提交数据 主要获取数据,不修改数据 主要提交数据,可修改数据 是否需要form表单 不一定 需要 安全性 查询字符串会显示在地址栏的URL中,不安全. ...

  10. {Reship}{KMP字符串匹配}

    关于KMP字符串匹配的介绍和归纳,作者的思路非常清晰,推荐看一下 http://blog.csdn.net/v_july_v/article/details/7041827