鍍金池/ 教程/ Linux/ 安裝
連接器
JSPs
重寫機(jī)制
CGI
Tomcat Manager
Windows 認(rèn)證
代理支持
虛擬主機(jī)
安全性注意事項(xiàng)
如何在 Maven 中使用 Tomcat 庫(kù)
安裝
MBean 描述符
JNDI 資源
類加載機(jī)制
Tomcat Web 應(yīng)用部署
基于 APR 的原生庫(kù)
負(fù)載均衡器
安全管理
附加組件
監(jiān)控與管理
Windows 服務(wù)
集群化與會(huì)話復(fù)制
高級(jí) IO 機(jī)制
SSI(服務(wù)器端嵌入)
WebSocket 支持
JDBC 數(shù)據(jù)源
日志機(jī)制
默認(rèn) Servlet
SSL/TLS 配置
Tomcat 的 JDBC 連接池
第一個(gè)應(yīng)用
簡(jiǎn)介
Realm 配置

安裝

本章概述

可利用多種方法把 Tomcat 安裝到不同的平臺(tái)上。關(guān)于 Tomcat 安裝方面的重要文檔是 RUNNING.txt。如果本節(jié)內(nèi)容尚未能解決你的某些困惑,建議查閱該文檔獲取幫助。

Windows 系統(tǒng)下的安裝

利用 Windows 安裝程序可以輕松地在 Windows 系統(tǒng)下安裝 Tomcat。無(wú)論是在界面還是在功能上,Windows 安裝程序都有向?qū)桨惭b程序,只需在以下幾個(gè)方面稍加注意:

  • 以 Windows 服務(wù)的形式進(jìn)行安裝 利用多種配置,Tomcat 可以安裝為 Windows 服務(wù)。在組件頁(yè)面勾選復(fù)選框,將服務(wù)設(shè)置為“自動(dòng)”啟動(dòng),這樣當(dāng) Windows 啟動(dòng)時(shí),Tomcat 也隨即啟動(dòng)。為了獲取最佳的安全性,可以把該服務(wù)作為單獨(dú)用戶來(lái)運(yùn)行,并降低權(quán)限(詳情參看 Windows 服務(wù)管理工具及其相關(guān)文檔)
  • Java 位置 為了運(yùn)行服務(wù),安裝程序通常會(huì)提供默認(rèn)的 JRE。安裝程序使用注冊(cè)表來(lái)確認(rèn) JRE 的基礎(chǔ)路徑,這可能是 Java 7 或 更新的版本,還可能包括安裝在完整 JDK 中作為其一個(gè)部分存在的 JRE。在 64 位操作系統(tǒng)下運(yùn)行時(shí),安裝程序會(huì)優(yōu)先查找 64 位 JRE,只有當(dāng)無(wú)法找到時(shí),才去查找32位的 JRE。并非強(qiáng)制性規(guī)定必須使用安裝程序所偵測(cè)到的默認(rèn) JRE,可以使用任何已經(jīng)安裝的 Java 7 或 更新的 JRE(32 位或 64 位)。
  • 托盤圖標(biāo) 當(dāng) Tomcat 作為一種服務(wù)運(yùn)行時(shí),不會(huì)顯示托盤圖標(biāo)。只有當(dāng)選擇在安裝完后立即運(yùn)行 Tomcat 時(shí),不管此時(shí) Tomcat 是否以服務(wù)形式運(yùn)行,托盤圖標(biāo)都會(huì)顯現(xiàn)。
  • 要想更好地了解如何管理以 Windows 服務(wù)形式運(yùn)行的 Tomcat 的信息,可查看 Window 服務(wù)指南。

針對(duì)啟動(dòng)與配置 Tomcat,安裝程序會(huì)創(chuàng)建相關(guān)的快捷方式。另外,需要特別注意的是,只有當(dāng) Tomcat 運(yùn)行時(shí),Tomcat 的 管理 Web 應(yīng)用(administration web application)工具才能使用。

UNIX 守護(hù)進(jìn)程

利用 commons-daemon 工程的 jsvc 工具,可以將 Tomcat 作為一個(gè)守護(hù)進(jìn)程來(lái)運(yùn)行。Tomcat 的二進(jìn)制發(fā)行版中包含著 jsvc 的源代碼包,它需要編譯。構(gòu)建 jsvc 需要一個(gè) C ANSI 編譯器(比如 GCC)、GNU Autoconf,以及一個(gè) JDK。

在運(yùn)行腳本之前,先將環(huán)境變量 JAVA_HOME 設(shè)置為 JDK 的基礎(chǔ)路徑。在調(diào)用 ./configure 腳本時(shí),需要使用 --with-java 參數(shù)來(lái)指定 JDK 路徑,比如:./configure --with-java=/usr/java。

使用下列命令應(yīng)該就能返回一個(gè)編譯好的 jsvc 二進(jìn)制可執(zhí)行文件,位于 $CATALINA_HOME/bin 目錄中——這需要的前提條件是:使用了 GNU TAR,并且將環(huán)境變量 CATALINA_HOME 指向 Tomcat 安裝基本路徑。

請(qǐng)注意,應(yīng)該使用 GNU make(gmake)而不是 FreeBSD 系統(tǒng)下的原生 BSD make。

cd $CATALINA_HOME/bin
tar xvfz commons-daemon-native.tar.gz
cd commons-daemon-1.0.x-native-src/unix
./configure
make
cp jsvc ../..
cd ../..

使用下列命令,Tomcat 就可以作為一個(gè)守護(hù)進(jìn)程來(lái)運(yùn)行了。

CATALINA_BASE=$CATALINA_HOME
cd $CATALINA_HOME
./bin/jsvc \
    -classpath $CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/tomcat-juli.jar \
    -outfile $CATALINA_BASE/logs/catalina.out \
    -errfile $CATALINA_BASE/logs/catalina.err \
    -Dcatalina.home=$CATALINA_HOME \
    -Dcatalina.base=$CATALINA_BASE \
    -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \
    -Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties \
    org.apache.catalina.startup.Bootstrap

如果 JVM 默認(rèn)使用的是服務(wù)器 VM,而不是客戶端 VM,則可能還需要指定 -jvm server。這一點(diǎn)已經(jīng)在 OS X 系統(tǒng)下得到證實(shí)。

jsvc 還有其他一些有用的參數(shù)。比如:-user 就能讓守護(hù)進(jìn)程初始化完成后切換到另一個(gè)用戶,從而能以非特權(quán)用戶來(lái)運(yùn)行 Tomcat,同時(shí)又能使用特權(quán)端口。不過(guò)要注意的是,如果使用這個(gè)選項(xiàng)來(lái)以根用戶運(yùn)行 Tomcat,需要禁用 org.apache.catalina.security.SecurityListener 檢查,這個(gè)檢查是用來(lái)防止以根用戶來(lái)運(yùn)行 Tomcat 的。

jsvc --help 參數(shù)會(huì)提供完整的 jsvc 用途信息。尤其是 -debug 參數(shù),它對(duì)于調(diào)試 jsvc 運(yùn)行中出現(xiàn)的問(wèn)題是非常有用的一個(gè)工具。

$CATALINA_HOME/bin/daemon.sh 可以作為一個(gè)模板,利用 jsvc /etc/init.d/ 在啟動(dòng)時(shí)自動(dòng)開(kāi)啟 Tomcat。

注意,要想以上述方式運(yùn)行 Tomcat,Commons-Daemon JAR 文件必須位于運(yùn)行時(shí)的類路徑上。Commons-Daemon JAR 文件在 bootstrap.jar 清單的類路徑項(xiàng)中。如果某個(gè) Commons-Daemon 類出現(xiàn)了 ClassNotFoundException(無(wú)法找到類) 或 NoClassDefFoundError(無(wú)法找到類定義) 這樣的錯(cuò)誤,那么在加載 jsvc 時(shí)將 Commons-Daemon JAR 添加到 -cp 參數(shù)中。

上一篇:連接器下一篇:JDBC 數(shù)據(jù)源