第一步
1、Solr 解壓後server/solr-webapp下一個webapp目錄,它就是Solr的Web項目,把它複製到tomcat的webapps目錄下並改名爲solr
1 # 進入Solr的server目錄下 2 /opt/modules/solr7/solr-7.7.0/server/solr-webapp/ 3 4 # 複製webapp目錄到tomcat-solr的webapps目錄下 5 cp -r webapp/ /usr/local/tomcat/apache-tomcat-9.0.16/webapps 6 7 # 將Solr的web應用改名 8 cd /usr/local/tomcat/apache-tomcat-9.0.16/webapps 9 # 將webapp重命名爲solr 10 mv webapp/ solr
2、複製所需依賴jar包
複製solr-7.7.0\server\lib\ext下的所有jar包到apache-tomcat-9.0.16\webapps\solr\WEB-INF\lib下(即剛剛複製並重命名爲solr的文件夾下)
cp ext/* /usr/local/tomcat/apache-tomcat-9.0.16/webapps/solr/WEB-INF/lib/
複製solr-7.7.0\server\lib下所有metrics-開頭的jar包(一共有5個)到apache-tomcat-9.0.16\webapps\solr\WEB-INF\lib下
cp metrics-* /usr/local/tomcat/apache-tomcat-9.0.16/webapps/solr/WEB-INF/lib/
第二步:配置solrhome
這個目錄用於存儲Solr Core的數據及配置文件
創建solrhome存儲Solr索引文件
在/usr/local/solr下創建solrhome文件夾
(複製solr-7.7.0\server\solr文件夾,到任意路徑下(這裏我們放在剛剛創建的solrhome文件夾下),並重命名爲solrhome(命名隨意),先創建再複製也可以)
# 複製solr目錄下所有內容到solrhome
cp -r * /usr/local/solr/solrhome/
第三步:配置Tomcat
3.1 修改web.xml
修改複製到tomcat中的Solr項目中的WEB-INF
目錄下的web.xml
配置文件
修改solr_home
路徑指向我們剛剛創建的solrhome
1 cd /usr/local/tomcat/apache-tomcat-9.0.16/webapps/solr/WEB-INF/ 2 vim web.xml
如果文件中沒有該代碼,手動加入
1 <!-- 修改solrhome路徑 --> 2 <env-entry> 3 <env-entry-name>solr/home</env-entry-name> 4 <env-entry-value>/usr/local/solr/solrhome</env-entry-value> 5 <env-entry-type>java.lang.String</env-entry-type> 6 </env-entry>
3.2 去掉安全驗證
還是在web.xml
文件中,把安全驗證的去掉,不然每次登陸都需要用戶名密碼驗證,麻煩,還有有一種說法:項目會報403錯誤。
1 <!-- Get rid of error message --> 2 <!-- 3 <security-constraint> 4 <web-resource-collection> 5 <web-resource-name>Disable TRACE</web-resource-name> 6 <url-pattern>/</url-pattern> 7 <http-method>TRACE</http-method> 8 </web-resource-collection> 9 <auth-constraint/> 10 </security-constraint> 11 <security-constraint> 12 <web-resource-collection> 13 <web-resource-name>Enable everything but TRACE</web-resource-name> 14 <url-pattern>/</url-pattern> 15 <http-method-omission>TRACE</http-method-omission> 16 </web-resource-collection> 17 </security-constraint> 18 -->
啓動tomcat測試
運行startup.sh文件
error:
Linux下啓動和關閉tomcat報錯,如下圖所示:
原因:
因爲啓動tomcat會調用tomcat安裝文件中的startup.bat,而它調用了catalina.bat則調用了setclasspath.bat。因此需要在setclasspath.bat的開頭手動聲明環境變量。
解決方案:
用vim打開tomcat的bin目錄下的setclasspath.sh,添加JAVA_HOME和JRE_HOME兩個環境變量(下圖紅色方框內),兩個環境變量路徑爲您安裝的java JDK的路徑。
windows下將export改爲set即可。
我的配置:
1 #java development 2 export JAVA_HOME=/usr/local/java/jdk1.8.0_201 3 export JRE_HOME=/usr/local/java/jdk1.8.0_201/jre
保存並且退出即可。
再次使用service tomcat start沒報錯,如下圖所示:
成功用service tomcat start開啓tomcat服務。
訪問http://localhost:8080/solr/index.html,部署完成
外部訪問:http://192.168.83.133:8080/solr/index.html