1. 程式人生 > >linux 下tomcat的安裝

linux 下tomcat的安裝

無法訪問 用戶 variable 瀏覽器中 sys exp 開始 col gin

寫在前面: 由於項目使用jdk1.6開發,所以對應服務器應安裝jdk1.6和tomcat6
1、環境變量的配置: 打開/etc/bashrc配置環境變量 JAVA_HOME=/usr/appsoft/jdk1.6.0_45/jre export JAVA_HOME CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH export CLASSPATH CATALINA_BASE=/usr/appsoft/tomcat export CATALINA_BASE CATALINA_HOME=$CATALINA_BASE export CATALINA_HOME PATH=\$JAVA_HOME/bin:\$CATALINA_HOME/bin:\$PATH export PATH 2、使環境變量生效:
配置完環境變量之後執行:#source /etc/bashrc使環境變量生效 3、安裝java運行環境: a) 將jdk-6u45-linux-i586.bin上傳到目標機器的/usr/appsoft/software目錄下; b) 在目標機器上打開一個終端,並在終端中執行如下命令: #cd /usr/appsoft/software #./jdk-6u45-linux-i586.bin 運行之後會在/usr/appsoft/software下有一個jdk1.6.0_45目錄 c) 將運行jdk-6u45-linux-i586.bin解壓得到的jdk1.6.0_45移至/usr/appsoft/下。具體為在終端中執行以下命令: #mv jdk1.6.0_45 /usr/appsoft 4、tomcat的安裝:
Tomcat安裝包的名稱為apache-tomcat-6.0.20.zip,該包為二進制發布包,不需要編譯,直接解壓後就能使用。安裝過程其實就是歸檔文件解壓過程,並將解壓獲取到的目錄進行改名,具體為: a) 以二進制方式將apache-tomcat-6.0.20.zip上傳至/usr/appsoft/software下。 b) 解壓apache-tomcat-6.0.20.zip,即在終端中輸入命令 #unzip apache-tomcat-6.0.20.zip c) 解壓完成後/usr/appsoft/software下有文件夾apache-tomcat-6.0.20。將該文件夾移動到/usr/appsoft下,並改名為tomcat。在終端中輸入命令 #mv apache-tomcat-6.0.20 /usr/appsoft/tomcat 5、發布程序
將iesweb.zip上傳到/usr/appsoft/tomcat/webapps下,並解壓 #unzip iesweb.zip 6、啟動tomcat 進入到/usr/appsoft/tomcat/bin目錄中,執行如下命令: #./catalina.sh run 執行# ps -ef |grep java | grep -v grep | grep tomcat查看tomcat進程 殺死tomcat進程的方法為: #kill -9 進程號 7、驗證發布是否成功 在瀏覽器中輸入:http://localhost:8080/iesweb/jsp/login.jsp驗證是否出現登錄界面,如出現登錄界面但是驗證碼無法顯示可以按照“問題處理”部分方法解決。
問題處理:
  • 安裝java和tomcat時可能對jdk-6u45-linux-i586.bin和apache-tomcat-6.0.20.zip沒有權限,需要加權限:# chmod +x jdk-6u45-linux-i586.bin apache-tomcat-6.0.20.zip
  • 執行catalina.sh時沒有權限需要加權限:# chmod +x catalina.sh
  • 啟動tomcat時報錯:The BASEDIR environment variable is not defined correctly
This environment variable is needed to run this program,檢查環境變量沒有錯誤,可能是權限問題:# chmod 777 -R /usr/appsoft/tomcat/bin/
  • 程序發布好之後出現“驗證碼無法顯示的問題”:並報出錯誤: linux Could not initialize class java.awt.image.BufferedImage ,
解決方法:打開文件/usr/appsoft/tomcat/bin/catalina.sh,在所有類似以下代碼: "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ -Djava.security.manager \ -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ -Dcatalina.base="$CATALINA_BASE" \ -Dcatalina.home="$CATALINA_HOME" \ -Djava.io.tmpdir="$CATALINA_TMPDIR" \ 在尾部加上一句: -Djava.awt.headless=true \ 修改後內容如下: exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ -Dcatalina.base="$CATALINA_BASE" \ -Dcatalina.home="$CATALINA_HOME" \ -Djava.io.tmpdir="$CATALINA_TMPDIR" \ -Djava.awt.headless=true \ 以tomcat6.0為例,總共有七處這樣的地方,修改好後即可。
本文參考了以下文章:
  • linux下tomcat6.0與jdk安裝詳細步驟 : http://blog.csdn.net/bingyingao/article/details/5614773
  • TOMCAT-報錯The BASEDIR environment variable is not defined correctly :http://blog.csdn.net/evils798/article/details/7284594

-------------------------------------------- linux Could not initialize class java.awt.image.BufferedImage -------------------------------------------- 網站驗證碼突然無法顯示,並報如下錯誤。 javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class java.awt.image.BufferedImage 網上搜索了一下,在catalina.sh裏加上一句“-Djava.awt.headless=true \”,問題解決。 經查,出現這種情況一般就是啟動tomcat的用戶無法訪問Xserver,包括Xserver沒有啟動或者沒有權限訪問. 以下為轉貼: 1.什麽是Headless mode? Headless模式是系統的一種配置模式。在該模式下,系統缺少了顯示設備、鍵盤或鼠標。 2.何時使用和headless mode? Headless模式雖然不是我們願意見到的,但事實上我們卻常常需要在該模式下工作,尤其是服務器端程序開發者。因為服務器(如提供Web服務的主機)往往可能缺少前述設備,但又需要使用他們提供的功能,生成相應的數據,以提供給客戶端(如瀏覽器所在的配有相關的顯示設備、鍵盤和鼠標的主機)。 3.如何使用和Headless mode? 一般是在程序開始激活headless模式,告訴程序,現在你要工作在Headless mode下,就不要指望硬件幫忙了,你得自力更生,依靠系統的計算能力模擬出這些特性來: System.setProperty("Java.awt.headless","true"); 修改${TOMCAT_HOME}/bin/catalina.sh或${TOMCAT_HOME}/bin/catalina.bat文件: 在所有類似以下代碼: "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ -Djava.security.manager \ -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ -Dcatalina.base="$CATALINA_BASE" \ -Dcatalina.home="$CATALINA_HOME" \ -Djava.io.tmpdir="$CATALINA_TMPDIR" \ 在尾部加上一句: -Djava.awt.headless=true \ 修改後內容如下: exec "$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS \ -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ -Dcatalina.base="$CATALINA_BASE" \ -Dcatalina.home="$CATALINA_HOME" \ -Djava.io.tmpdir="$CATALINA_TMPDIR" \ -Djava.awt.headless=true \ 以tomcat6.0為例,總共有七處這樣的地方,修改好後即可。

linux 下tomcat的安裝