热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

Apachesolr的安装方法

Solr是一个基于Lucenejava库的企业级搜索服务器,本文记录了solr的安装过程,版本为最新的1.4.1。1)下载从solr的官网http://lucene.apache.org/solr/找到最新的版本1.4.1.解开下载的apache-solr-1.4.1.zip或apache-solr-1.4.1.tgz
Solr是一个基于Lucene java库的企业级搜索服务器,本文记录了solr的安装过程,版本为最新的1.4.1。

1) 下载
    从solr的官网http://lucene.apache.org/solr/找到最新的版本1.4.1.
    解开下载的apache-solr-1.4.1.zip或apache-solr-1.4.1.tgz文件到apache-solr-1.4.1目录.
2) 简易安装
    solr的发布包中包含一些example,为了方便的运行这些example,solr的发布包中还额外的附带了jetty以便我们可以快速的搭建一个可运行的solr实例。
    因为一切都是现成的,因此过程就很简单了, 参考solr的教程(http://lucene.apache.org/solr/tutorial.html), 步骤如下:
1. cd apache-solr-1.4.1/example
2. java -jar start.jar
3. 打开浏览器访问 access http://localhost:8983/solr/admin/ 
     如果可以看到solr的搜索页面,说明solr正常运行。足够简单吧。
3) 标准安装
    上面的简易安装方式终究不能运用于正式场合,因此还是需要标准安装方式。
    solr的安装其实需要做的事情不多,因为本身就只需要运行起来是一个打包好的war包,只要配置OK就可以运行于各个web container。

    通用的solr安装步骤如下:
1. 准备好web container 如tomcat, jetty, resin等
注意安装前先停止web container服务器。
2. 从上面解压好的solr发布包中找到example\solr目录
这个目录可以用来作为配置solr的模板使用
将example\solr目录复制到其他路径,如C:\soft\solr,以后这个目录就将作为solr home使用
注意有个文件需要修改一下,$SOLR_HOME/conf/solrconfig.xml,找到dataDir设置:
默认为${solr.data.dir:./solr},用的是相对路径,这个需要修改为完整路径:
${solr.data.dir:C:\soft\solr\data}
3. 从上面解压好的solr发布包中找到solr的war包
apache-solr-1.4.1/dist/apache-solr-1.4.1.war
可以将这个war复制到solr home目录下
4. 启动web container

启动时有两个东西需要做到:
1. 要运行的solr的webapp
可以通过直接复制solr的war包到webapp目录,也可以通过其他方式指定这个war的路径
总之是让web container启动solr这个应用。
2. 要指明solr home

方式有3种:
1. 设置java 的系统参数solr.solr.home(应该是solr.home,但是官网就是写成solr.solr.home)
如 -Dsolr.solr.home=C:\soft\solr
2. 设置JNDI lookup "java:comp/env/solr/home"
3. 默认为./solr目录,即当前工作路径下的solr
由于工作路径容易造成问题,因此一般不推荐这种方式。
5. 访问solr的管理页面来验证安装是否完成
    上述步骤中其他步骤都简单,只有步骤4需要额外注意。虽然原则上都是这些内容,但是具体到不同的web container会有不同的方法。
    下面以tomcat和jetty为例,假定步骤1,2,3都已经完成。
4) 安装于tomcat
    以下内容参考官网文档 http://wiki.apache.org/solr/SolrTomcat.  
    1. 修改tomcat的server.xml文件
主要是修改监听端口,另外需要设置URIEncoding为UTF-8。
                    cOnnectionTimeout="20000" 
               redirectPort="8443" URIEncoding="UTF-8" />
    2. 增加tomcat\conf\Catalina\localhost\solr.xml文件

内容为:


  

    步骤4就完成了,使用的tomcat版本为6.28。
5) 安装于jetty
    以下内容参考官网文档 http://wiki.apache.org/solr/SolrJetty, 但是坦白说,这个文档的内容有点凌乱。
    jetty安装完成后,只需一个步骤,增加文件jetty\contexts\solr.xml,内容如下:



  /solr
  C:\soft\solr\apache-solr-1.4.1.war
  true
  false
  /etc/webdefault.xml
  
    org.mortbay.jetty.webapp.WebInfConfiguration
    org.mortbay.jetty.plus.webapp.EnvConfiguration
    org.mortbay.jetty.plus.webapp.Configuration
    org.mortbay.jetty.webapp.JettyWebXmlConfiguration
    org.mortbay.jetty.webapp.TagLibConfiguration
  

  
  
    /solr/home
    C:\soft\solr
    true
  


    主要是指定contextPath/war, 另外设置"/solr/home",注意jetty下是"/solr/home",不是"solr/home"。这里有点奇怪。
    时间有限,其他webcontainer就不一一测试了,相信原理都是一样的。
    补充:以上为windows上的安装过程,linux系统应该也是相同的。我在SUSE 11上验证通过,安装成功。

推荐阅读
  • 在Linux系统上构建Web服务器的详细步骤
    本文详细介绍了如何在Linux系统上搭建Web服务器的过程,包括安装Apache、PHP和MySQL等关键组件,以及遇到的一些常见问题及其解决方案。 ... [详细]
  • 本文将详细介绍如何在ThinkPHP6框架中实现多数据库的部署,包括读写分离的策略,以及如何通过负载均衡和MySQL同步技术优化数据库性能。 ... [详细]
  • 本文介绍了如何利用 Spring Boot 和 Groovy 构建一个灵活且可扩展的动态计算引擎,以满足钱包应用中类似余额宝功能的推广需求。我们将探讨不同的设计方案,并最终选择最适合的技术栈来实现这一目标。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 在使用Maven进行项目构建时,由于依赖库的下载速度慢常常让人感到沮丧,这直接影响了开发效率和学习热情。幸运的是,阿里云提供了一个快速的国内镜像服务,能够显著提升Maven项目的构建速度。 ... [详细]
  • docker镜像重启_docker怎么启动镜像dock ... [详细]
  • 近期我们开发了一款包含天气预报功能的万年历应用,为了满足这一需求,团队花费数日时间精心打造并测试了一个稳定可靠的天气API接口,现正式对外开放。 ... [详细]
  • 深入解析:OpenShift Origin环境下的Kubernetes Spark Operator
    本文探讨了如何在OpenShift Origin平台上利用Kubernetes Spark Operator来管理和部署Apache Spark集群与应用。作为Radanalytics.io项目的一部分,这一开源工具为大数据处理提供了强大的支持。 ... [详细]
  • 深入解析BookKeeper的设计与应用场景
    本文介绍了由Yahoo在2009年开发并于2011年开源的BookKeeper技术。BookKeeper是一种高效且可靠的日志流存储解决方案,广泛应用于需要高性能和强数据持久性的场景。 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • 本文介绍如何在Linux系统中卸载预装的OpenJDK,安装指定版本的JDK 1.8,并配置防火墙以确保系统安全性和软件兼容性。 ... [详细]
  • EasyMock实战指南
    本文介绍了如何使用EasyMock进行单元测试,特别是当测试对象的合作者依赖于外部资源或尚未实现时。通过具体的示例,展示了EasyMock在模拟对象行为方面的强大功能。 ... [详细]
  • 本文详细介绍了如何正确安装Java EE SDK,并解决在安装过程中可能遇到的问题,特别是关于servlet代码在Apache Tomcat 10中无法运行的情况。 ... [详细]
  • PHP 中 preg_match 函数的 isU 修饰符详解
    本文详细解析 PHP 中 preg_match 函数中 isU 修饰符的具体含义及其应用场景,帮助开发者更好地理解和使用正则表达式。 ... [详细]
  • 深入分析十大PHP开发框架
    随着PHP技术的发展,各类开发框架层出不穷,成为了开发者们热议的话题。本文将详细介绍并对比十款主流的PHP开发框架,旨在帮助开发者根据自身需求选择最合适的工具。 ... [详细]
author-avatar
青末老大_660
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有