solr服務器配置與tomcat整合
最近找了視頻學習lucene和solr,記一下怎么配置solr
JDK使用的為1.7,如果用1.6貌似會提示版本低
先下載solr3.5和mmseg4j1.8.5的壓縮包,下載鏈接在底部
解壓solr3.5,解壓后目錄結構為
在D盤新建一個目錄,名稱為solr(看自己意思,位置和目錄名沒有特定要求),然后在里面創建兩個目錄名稱分別為home和server,然后將example目錄下的solr文件夾下的所有文件復制到新建的home目錄下,再將example目錄下webapps目錄中的solr.war解壓
然后將解壓后的solr目錄移動到server目錄中
這時候再修改home目錄中conf下的solrconfig.xml文件,將dataDir節點中的值改為${solr.data.dir:D:\solr\home\data}
接著找到tomcat目錄,修改server.xml添加虛擬路徑
<Context path="/solr" docBase="D:\solr\server\solr" reloadable="false"> <Environment name="solr/home" type="java.lang.String" value="D:\solr\home" override="true" /> </Context>
下一步取消VelocityResponseWriter輸出,否則啟動時會報異常,如果想用的話把jar加上就行了,修改solrconfig.xml
現在開始加入中文分詞,將mmseg4j1.8.5壓縮包中的mmseg4j-all-1.8.5.jar和mmseg4j-solr-1.8.5.jar放到D:\solr\server\solr\WEB-INF\lib目錄中
在D:\solr\home中再創建一個dic 目錄,用來存放分詞字典,將mmseg4j1.8.5自帶的四個擴展名為dic的文件復制到此目錄即可
然后修改schema.xml文件
將原來的xml中的這幾個結點中的dicPath改為dic,如果沒有這些節點復制過去即可
<fieldType name="textComplex" class="solr.TextField" > <analyzer> <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="dic"/> </analyzer> </fieldType> <fieldType name="textMaxWord" class="solr.TextField" > <analyzer> <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word" dicPath="dic"/> </analyzer> </fieldType> <fieldType name="textSimple" class="solr.TextField" > <analyzer> <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple" dicPath="dic"/> </analyzer> </fieldType>
到現在基本的配置已經完成,開始啟動tomcat進行測試
在瀏覽器輸入http://localhost:8080/solr/admin/
點擊這里畫線的地方,跳轉到分詞器測試頁面
將Field改為Type
然后在右邊的文本框中輸入text_general
點擊按鈕后會在下方顯示出分詞結果,會發現自帶的分詞器在對中文分詞時是按單字來分的,并不是按詞來分
接著將text_general改為textComplex再進行測試,分詞的時候就是按中文詞語來分了
注意:text_general和textComplex都是在sechma.xml配置好的分詞器,并不是隨便添的
下載鏈接:
solr3.5:http://pan.baidu.com/s/1xwry2
mmseg4j1.8.5:http://pan.baidu.com/s/1pJHoA2f
視頻鏈接:http://pan.baidu.com/s/1i3vMhtr
來自:http://my.oschina.net/u/2292000/blog/392450