這裡介紹如何在 OpenSUSE 中使用 YaST 安裝 Tomcat 伺服器,並設定 Apache Tomcat Connector 結合兩個伺服器。

在 OpenSUSE 中若要安裝 Tomcat 伺服器,可以使用 YaST 這個 OpenSUSE 特有的系統管理介面來安裝,方法非常簡單。


若您是使用 CentOS Linux,請參考 CentOS Linux 7 安裝 Apache 2 與 Tomcat 8 伺服器步驟教學

安裝 Tomcat 8 伺服器

Step 1
root 管理者權限 YaST 系統管理工具:

sudo yast

YaST 系統管理介面

選擇「Software」中的「Software Management」。

Step 2
以「tomcat」關鍵字搜尋套件。

搜尋套件

Step 3
以 Tab 鍵、方向鍵與空白鍵選擇「tomcat」套件,選擇好之後,選擇「Accept」。

搜尋套件

Step 4
接著會顯示所有的相依性套件,直接選擇「OK」進行安裝。

安裝 Tomcat 套件

Step 5
等待下載與安裝套件。

安裝 Tomcat 套件

Step 6
若沒有出現錯誤訊息的話,這樣就完成 Tomcat 的安裝了。

安裝 Tomcat 套件

Step 7
安裝完成後,啟動 Tomcat 服務:

sudo service tomcat start

檢查 Tomcat 服務是否有成功啟動:

sudo service tomcat status

若狀態呈現綠色的 active,就表示成功啟動了:

啟動 Tomcat 服務

Apache Proxy 設定

檢查 Tomcat 的 server.xml 中是否有 AJP 的設定,若沒有就自己加上去:

<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

加入這個 Connector 之後,Apache 就可以透過 8009 連接埠連線到 8443 連接埠的 Tomcat 伺服器,如果 Tomcat 沒有使用加密的連線,可以把 8443 改為一般的 8080

<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8080" />

確認 Apache Proxy 相關的模組有啟用:

sudo a2enmod proxy proxy_http proxy_ajp

在 Apache 的設定檔(例如 httpd.conf)中,加入 Proxy 的設定:

ProxyPass /static/ !
ProxyPassReverse /static/ !
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/

這樣就會把除了 /static/ 之外的網址直接導向 Tomcat 伺服器,也就是說靜態網頁可放在 /static/ 由 Apache 負責處理,其餘的網頁則由 Tomcat 負責。

最後再將自己開發的 WAR 檔部署在 Tomcat 的 webapps 目錄(預設為 /srv/tomcat/webapps),這樣就完成 Tomcat 的安裝與設定了。