Solr學習筆記 在Tomcat上部署運行Solr

上一篇咱們初識了Solr而且學習了Jetty的啓動方式,查看了Solr的管理界面,這一篇咱們來實如今Tomcat上部署運行Solr。html

部署環境:java

window7linux

jdk1.6.0_14web

Solr-4.7.2shell

tomcat-6.0.37apache

Solr的安裝配置Solr home ,主要介紹基於JNDI的配置,其它方式能夠參考Solr的wiki。

基於JNDI配置windows

1:首先創建一個Solr的運行目錄。tomcat

C:\solr-tomcatapp

將解壓縮包中的D:\work\work-tools\solr\solr-4.7.2\solr-4.7.2\example\下的solr目錄拷貝到C:\solr-tomcat下。運維

2:創建JNDI文件

在tomcat的D:\work\work-tools\webserver\tomcat-6.0.37\conf\Catalina\localhost下面建立solr.xml文件。

內容以下:

view sourceprint?

1.<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

2.<Context docBase="D:\work\work-tools\webserver\tomcat-6.0.37\webapps\solr.war" debug="0" crossContext="true" >

3.? <Environment name="solr/home" type="java.lang.String" value="C:\solr-tomcat\solr" override="true" />

4.</Context>


3:修改server.xml的URI編碼

在tomcat的D:\work\work-tools\webserver\tomcat-6.0.37\conf下編輯server.xml

view sourceprint?

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

2.              connectionTimeout="20000"

3.              redirectPort="8443"  URIEncoding="UTF-8" />

4:部署solr.war包

把D:\work\work-tools\solr\solr-4.7.2\solr-4.7.2\dist下的solr-4.7.2.war修改成solr.war拷貝到D:\work\work-tools\webserver\tomcat-6.0.37\webapp下。

5:配置日誌

這一步很關鍵,若是不配置會出現如下錯誤

Error filterStart

Context [/solr] startup failed due to previous errors

\

在這裏看不出到底出現了什麼錯誤,大體只知道在啓動Context /solr的時候,以前有配置出現了錯誤,可是什麼配置咱們不知道,這時候能夠查看一下tomcat的\tomcat-6.0.37\logs目錄下查看localhost.2014-08-23.log日誌,咱們會看到詳細出錯信息。

view sourceprint?

1.嚴重: Exception starting filter SolrRequestFilter

2.java.lang.NoClassDefFoundError: Failed to initialize Apache Solr: Could not find necessary SLF4j logging jars. If using Jetty, the SLF4j logging jars need to go in the jetty lib/ext directory. For other containers, the corresponding directory should be used. For more information, see: http://wiki.apache.org/solr/SolrLogging

這裏說的很清楚是SLF4J的jar沒有,咱們到solr-4.7.2\example\lib\ext下把全部的包都考到tomcat\lib目錄下。

6:啓動tomcat

\


6:查看solr的admin頁面http://127.0.0.1:8080/solr

\

總結:這些配置在solr的wiki上都有說明,而且都按照linux和windows分類,其實solr真正的生產環境仍是要部署在linux上的,由於Solr提供了一些用於測試及管理、維護較爲方便的shell腳本,這樣在linux運維solr是很是方便的。

注:wiki地址http://wiki.apache.org/solr/SolrTomcat

相關文章
相關標籤/搜索