本人上周五刚刚配置了一遍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. OC中property的有关属性

    property的有关属性: (1)readwrite是可读可写特征:需要生成getter方法和setter方法: (2)readonly是只读特性只会生成getter方法不会生成setter方法: ...

  2. ORACLE常见数据类型详解

    1.字符类型 • CHAR:一个定长字符串,当位数不足自动用空格填充来达到其最大长度.如非NULL的CHAR(12)总是包含12字节信息.CHAR字段最多可以存储2,000字节的 信息. • VARC ...

  3. spring代理模式 service远程调用,插件执行

    最近,研究了一下平台远程调用的过程,和service层插件执行的原理,记录一下. 1.远程service调用过程 首先看一下类的继承结构 封装调用处理过程 封装service调用接口 封装servic ...

  4. java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 错误的解决办法

    java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 错误的解决办法 (2011-05-05 16:08:05) 转载▼ ...

  5. 转 LoadRunner 技巧之 IP欺骗 (推荐)

    IP欺骗也是也loadrunner自带的一个非常有用的功能. 需要使用ip欺骗的原因: 1.当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量 ...

  6. tp框架总结(二)

    一.函数库和类库 项目中的常用的函数库要封装到项目Common/function.php中  在项目中可以直接调用  [ 函数();] import方法是ThinkPHP内建的类库导入方法,提供了方便 ...

  7. Generate transparent shape on image

    Here is an example code to generate transparent shape on image. Need to pay attention can not use cv ...

  8. 怎么部署java项目(从搭建环境说起)

    1.服务器需要安装对应开发版本的jdk 在官网下载jdk对应的jdk版本,解压到某个目录下如: root@guchen-ubuntu16-04lts:/home/guchen/usr/java# ls ...

  9. elasticsearch同义词及动态更新

    第一种:参考地址:http://dev.paperlesspost.com/setting-up-elasticsearch-synonyms/271.Add a synonyms file.2.Cr ...

  10. 1-13 代理ARP和RARP

    一.代理ARP(Proxy ARP) 因为路由器有阻住广播的作用,如果我们要访问一台远端的主机,那么我们封装的并不是远端的目的MAC地址,而是我们网关的MAC地址. 当我们的网关出现故障,就需要给他重 ...