在 CentOS 5 上安裝 Tomcat
免責聲明:我不是伺服器管理員,我是一個 Windows 使用者,過著罪惡的安裝嚮導和拖放的生活
我正在嘗試在 MediaTemple 專用虛擬伺服器託管的 CentOS 5 上安裝 Tomcat。
我基本上遵循了這個指南:
- 安裝 jpackage 並配置 yum.repo.d jpackage 文件設置 enabled=1
- 使用yum安裝java(yum install java)
- 用“wget http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.14/bin/apache-tomcat-6.0.14.tar.gz ”下載了tomcat的二進制發行版
- 將 JAVA_HOME 設置為指向我使用“export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/”找到的 jdk 位置
- 我將 Tomcat 文件解壓縮/解壓縮並執行 ./startup.sh 以啟動 Tomcat 伺服器。這應該將 Tomcat 伺服器放在 myserver.com:8080 - 但是,當我嘗試瀏覽它時(或者當我嘗試從 SSH ‘curl localhost:8080’)時,我只是得到一個無法聯繫主機的錯誤,然後我輸入./startup.sh,這是控制台輸出:
$$ root@myserver bin $$# ./startup.sh
Using CATALINA_BASE: /root/apache-tomcat-6.0.14 Using CATALINA_HOME: /root/apache-tomcat-6.0.14 Using CATALINA_TMPDIR: /root/apache-tomcat-6.0.14/temp Using JRE_HOME: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/ [root@myserver bin]#
我在這裡錯過了一步嗎?
編輯:我現在通過查看日誌發現正在發生以下錯誤:
VM 初始化期間發生錯誤無法為對象堆保留足夠的空間
在仔細遵循本指南後,我解決了這個問題:
http://de0ris.blogspot.com/2008/08/installing-tomcat-6x-on-centos-5.html
正如上面評論中提到的,JRE 和 JDK 是分開下載的。我似乎在任何包管理器中都找不到它們,所以我不得不直接下載它們並執行它們。
需要Tomcat6嗎?什麼版本的Centos?(我假設“某種Tomcat”和“目前Centos”在撰寫本文時為5.3)
除非您需要 Tomcat 6,否則您不需要 jpackage 儲存庫。此外,Centos 5.3 附帶 openjdk 1.6.0,它已通過 Java SE 6 TCK。
只需“yum install tomcat5”即可引入您需要的所有依賴項(包括 openjdk),其中許多將基於 jpackage 源。安裝後,您只需要“service tomcat5 start”即可啟動它。注意:以 root 身份執行 Web 容器非常非常糟糕,因為它存在巨大的安全風險。儲存庫版本安裝的 tomcat5 服務會將其權限放棄給具有更多有限權限的“tomcat”使用者。要在系統引導時自動啟動 tomcat,請使用“chkconfig tomcat5 on”。
在上述情況下,埠 8080 可能被預設防火牆阻止。您可以使用“service iptables stop”關閉防火牆(建議僅用於測試連接性,不要在沒有防火牆的情況下在生產環境中執行)。Centos 提供了 GUI 和 Text UI 工具(分別為 system-config-securitylevel 和 system-config-securitylevel-tui)來修改防火牆,或者您可以直接使用 iptables(參見“man iptables”)。