您的位置:首页 > 其它

搭建solr3.6搜索服务器

2014-11-29 21:34 197 查看
在搭建服务器之前需要下载以下几个发行包:

apache-solr-3.6.0-src.tgz

apache-solr-3.6.0.zip

lucene-3.6.0.zip

lucene-3.6.0-src.tgz

将以上几个包下载完成以后,我们将直接使用solr发行包给定的war包进行快速的搭建solr搜索服务器,这种方式一般不能满足实际的需求开发,它常常用于快速了解solr。

1.将apache-solr-3.6.0\apache-solr-3.6.0\example下面的multicore拷贝到apache-tomcat-7.0.2\conf下面;

multicore目录下面包含了Solr的基本配置。Solr支持配置多个实例,亦即,可以启动多个实例来服务于前端不同的搜索请求,每个实例对应一个core,而这样多个core的配置是通过multicore\solr.xml进行配置的,然后在multicore下面的每个目录中对应着每个core的详细配置,具体包括schema.xml(配置与Lucene的Field、Analyzer等相关的内容)、solrconfig.xml(这个是Solr实例核心的配置)。

另外,如果在solrconfig.xml中没有指定<dataDir>索引目录配置,则默认会生成apache-tomcat-7.0.2\conf\multicore\data\index目录,该目录下面存储索引文件。

2.将apache-solr-3.6.0\apache-solr-3.6.0\dist下面的apache-solr-3.6.0.war拷贝到apache-tomcat-7.0.2\webapps目录下面

3.配置WAR程序的Context:在apache-tomcat-7.0.2\conf\Catalina\localhost下面(如果目录不存在,则手动创建),创建文件apache-solr-3.6.0.xml,

apache-solr-3.6.0.xml的配置内容如下:

[html] view
plaincopy

<span style="font-size:16px;"><Context docBase="${catalina.home}/webapps/apache-solr-3.6.0.war" debug="0" crossContext="true" >

<Environment name="solr/home" type="java.lang.String" value="${catalina.home}/conf/multicore" override="true" />

</Context></span>

docBase指定了我们的WAR文件的位置,上面的“solr/home”非常关键,在Web容器启动以后会加载Solr的基本配置并初始化相应的组件实例,它会根据指定的“solr/home”配置的路径去搜索相关的配置

4.设置Solr的字符集

默认Solr使用了UTF-8字符集编码,如果你的Tomcat不是的话,在执行中文搜索的时候可能会出现乱码。如果你的Tomcat默认8080端口请求字符集就是UTF-8,并且想使用这个默认的端口提供搜索服务,则可以修改apache-tomcat-7.0.2\conf\server.xml文件的内容,如下所示:

[html] view
plaincopy

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000" URIEncoding="UTF-8"

redirectPort="8443" />

在上面我们增加了一个URIEncoding="UTF-8"的配置

配置完成以后就可以启动tomcat,然后在浏览器地址拦中输入:http://localhost:8080/apache-solr-3.6.0/,如果看到如下 画面则说明配置成功:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: