萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Windows 7 教學

Windows 7 安裝 Solr + Tomcat 完整教學(含圖文與避坑指南)

Solr 是基於 Lucene 的企業級搜尋伺服器,支援面向搜尋、高亮顯示、多格式輸出(XML/JSON),並提供 HTTP 管理介面。雖然生產環境建議部署於 Linux,但 Windows 7 仍可作為開發/測試環境。本文記錄在 Win7 64 位元上部署 Solr 4.9.0 + Tomcat 8.0.9 + JDK 1.8 的完整流程,並釐清官方文件易誤解的 solr.solr.home 設定細節。

環境準備

  • 作業系統:Windows 7 64-bit
  • JDK:1.8.0_05 64-bit(Solr 4.9 需 JDK 1.7+)
  • Tomcat:apache-tomcat-8.0.9-windows-x64
  • Solr:solr-4.9.0

安裝步驟

步驟 1:解壓 Solr

將 solr-4.9.0.zip 解壓至任意目錄,本文範例為 D:\Installed Applications\solr-4.9.0\solr-4.9.0。

步驟 2:部署 WAR 檔

將 solr-4.9.0\dist\solr-4.9.0.war 複製到 Tomcat webapps 目錄,建議重命名為 solr.war。

步驟 3:啟動 Tomcat 解壓 WAR

啟動 Tomcat,雖會報錯,但會自動將 WAR 解壓至 webapps\solr。也可手動解壓。

步驟 4:配置 solr.solr.home(核心步驟)

易錯點: 官方教學提到「指向的目錄需包含 conf/solrconfig.xml 與 conf/schema.xml」,實際上這兩個檔案位於 example/solr/collection1/conf,而非直接在 solr.home 下。正確做法是指向 example 目錄。

方法一:修改 web.xml

<env-entry>
  <env-entry-name>solr/home</env-entry-name>
  <env-entry-value>D:/Installed Applications/solr-4.9.0/solr-4.9.0/example</env-entry-value>
  <env-entry-type>java.lang.String</env-entry-type>
</env-entry>

注意:路徑需使用正斜線 /。

方法二:建立 Context 檔(推薦)

在 $TOMCAT_HOME/conf/Catalina/localhost 建立 solr.xml:

<Context docBase="D:/Installed Applications/solr-4.9.0/solr-4.9.0/example/webapps/solr.war"
         debug="0" crossContext="true" override="false">
  <Environment name="solr/home" type="java.lang.String"
               value="D:/Installed Applications/solr-4.9.0/solr-4.9.0/example" override="false"/>
</Context>

override="false" 可防止 Tomcat 重啟時覆蓋設定。

步驟 5:複製 collection1 目錄

將 solr-4.9.0/example/solr/collection1 整個複製到 example 目錄下,使 example 直接包含 collection1。

步驟 6:補齊 JAR 檔

將 example/lib/ext 下的 JAR 複製到 Tomcat lib 或 webapps/solr/WEB-INF/lib。若啟動仍報錯,依錯誤訊息從 dist 目錄補齊對應 JAR。

步驟 7:啟用 UTF-8 支援中文

編輯 Tomcat conf/server.xml,在 <Connector> 標籤加入 URIEncoding="UTF-8"。

步驟 8:驗證安裝

啟動 Tomcat,瀏覽器開啟 https://localhost:8080/solr/admin/,出現管理介面即成功。

總結

關鍵在於正確設定 solr.solr.home 指向含 collection1 的上層目錄,並補齊必要 JAR。Linux 部署流程大同小異。

copyright © 萬盛學電腦網 all rights reserved