首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> JSP 程式設計 >> 關於JSP

Tomcat 3.1 在 RedHat Linux 上的安裝與 Apache 整合指南

     編輯:關於JSP

Tomcat 3.1 於 RedHat 環境部署完整教學

Tomcat 3.1 實作 Servlet 2.2 與 JSP 1.1 規範,是早期 Java Web 伺服器的標準參考實作。本文記錄在 RedHat Linux 環境下,從 JDK 安裝、Tomcat 部署、至 Apache 整合的完整流程。雖然版本古老,但安裝邏輯與現代 Tomcat 9/10 核心步驟相通,具參考價值。

前置準備:下載必要檔案

元件來源檔案名稱 (範例)
JDK 1.2.2java.sun.comjdk1_2_2-linux-i386.tar.gz
Tomcat 3.1jakarta.apache.orgjakarta-tomcat.tar.gz
mod_jserv.sojakarta.apache.org/builds/.../linux/i386/mod_jserv.so (Apache 連接模組)

步驟 1:安裝 JDK 並設定環境變數

# 解壓縮至 /usr/local
cp jdk1_2_2-linux-i386.tar.gz /usr/local
cd /usr/local
tar xvzf jdk1_2_2-linux-i386.tar.gz

# 建立符號連結方便版本切換
ln -s jdk1.2.2 jdk
ln -s jdk/jre jre

# 設定環境變數 (編輯 /etc/profile)
vi /etc/profile
# 加入以下內容:
JAVA_HOME=/usr/local/jdk
export JAVA_HOME
CLASSPATH=/usr/local/jdk/lib:/usr/local/jre/lib
export CLASSPATH
PATH=$PATH:/usr/local/jdk/bin:/usr/local/jre/bin
export PATH

# 立即生效
source /etc/profile

# 驗證
java -version
javac -version

步驟 2:安裝 Tomcat 3.1

cp jakarta-tomcat.tar.gz /usr/local
cd /usr/local
tar xvzf jakarta-tomcat.tar.gz

# 重新登入或 source /etc/profile 確保環境變數生效

# 啟動 Tomcat
cd /usr/local/jakarta-tomcat/bin
./startup.sh start

# 停止 Tomcat
# ./shutdown.sh stop

# 驗證:瀏覽器開啟 https://localhost:8080/
# 應看到 Tomcat 預設頁面與 JSP/Servlet 範例

常見啟動問題排查

  • CLASSPATH 錯誤:確認 tools.jar 在 $JAVA_HOME/lib 下
  • Port 8080 被佔用:netstat -an | grep 8080 檢查,修改 server.xml 連接埠
  • 權限不足:確認啟動使用者對目錄有讀寫執行權限

步驟 3:整合 Apache HTTP Server (mod_jserv)

Tomcat 本身可獨立運作,但生產環境通常前置 Apache 處理靜態資源、SSL、虛擬主機等。

# 1. 複製模組至 Apache 模組目錄
cp mod_jserv.so /your/apache/libexec/

# 2. 複製 Tomcat 產生的 Apache 設定檔
cp /usr/local/jakarta-tomcat/conf/tomcat.conf /your/apache/conf/path/

# 3. 編輯 Apache 主設定檔
vi /your/apache/conf/path/httpd.conf
# 加入:
Include /your/apache/conf/path/httpd/tomcat.conf

# 4. 重新啟動 Apache
/your/apache/bin/apachectl restart

# 5. 啟動 Tomcat (順序:先 Tomcat 再 Apache)
cd /usr/local/jakarta-tomcat/bin
./startup.sh start

驗證整合成功

lynx https://localhost/examples/
# 或瀏覽器開啟 https://localhost/examples/
# 應看到 JSP/Servlet 範例目錄,點擊可正常執行

步驟 4:分散式部署 (選用)

若 Apache 與 Tomcat 在不同機器:

  1. 修改 /usr/local/jakarta-tomcat/conf/tomcat.conf 中的 ApJServHost 指向 Tomcat 主機 IP
  2. 確保防火牆開放 Tomcat 連接埠 (預設 8007 AJPv12 / 8009 AJPv13)
  3. Apache 端 tomcat.conf 設定 ApJServMount /examples /root 對應 Context

關鍵設定檔說明

檔案用途關鍵參數
server.xmlTomcat 核心設定Port、Context、Logger、Valve
web.xml全域 Web 應用設定Servlet 定義、MIME 對應、Welcome 檔案
tomcat.confApache 整合設定ApJServMount、ApJServHost、ApJServRoute
startup.sh啟動腳本CLASSPATH 組裝、JVM 參數傳遞

現代化對照:Tomcat 9/10 部署差異

項目Tomcat 3.1 (歷史)Tomcat 9/10 (現代)
連接協定mod_jserv (AJPv12)mod_proxy_ajp (AJPv13) 或 mod_proxy_http
JDK 版本JDK 1.2.xJDK 8/11/17/21 (LTS)
部署單位.war 或目錄.war、目錄、Spring Boot Fat Jar
管理介面無內建Manager App、Host Manager
SSL 終端Apache 專責Tomcat 可直接支援 (APR/native)
設定檔格式XMLXML (相容) + 部分支援 YAML/JSON

生產環境建議清單

  • 使用 systemd 管理 Tomcat 服務 (/etc/systemd/system/tomcat.service)
  • 設定 JVM 參數:-Xms2g -Xmx4g -XX:+UseG1GC -XX:MaxMetaspaceSize=512m
  • 啟用 Access Log Valve 與 GC Log 分析效能
  • 配置 logrotate 管理 catalina.out、localhost_access_log
  • 定期更新 Tomcat 修補安全漏洞 (CVE)
  • 考慮 Docker 容器化部署:docker run -d -p 8080:8080 tomcat:9-jdk11

雖然 Tomcat 3.1 已成歷史,但理解其安裝架構有助於掌握 Servlet 容器運作核心:JVM 啟動 → 類別載入 → Web 應用部署 → 連接器監聽 → 請求分派 → Servlet 生命週期。現代開發建議直接使用 Spring Boot 內嵌 Tomcat/Jetty/Undertow,簡化部署運維。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved