一,安裝JDk
- 先下載jdk,鏈接http://www.oracle.com/technetwork/java/javase/downloads/index.html,選擇相對應平台的JDK。
由於筆者系統是32位的,所以我下載的包是 jdk-8u31-linux-i586.tar.gz。 - 解壓jdk,移動並重命名。
tar -zxvf jdk-8u31-linux-i586.tar.gz
mv jdk1.8.0_31 /usr/local - 編輯環境變量,定義JAVA_HOME CLASSPATH 並將JAVA_bin 追加到環境變量中。
vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/local/jdk1.8.0_31/
export CLASSPATH=/usr/local/jdk1.8.0_31/lib
export PATH=$PATH:$JAVA_HOME/bin讓其即時生效,source /etc/profile
檢查環境配置是否OK,echo $JAVE_HOME ;echo $CLASSPATH ;echo $PATH
查看java版本 java -version
二,安裝tomcat
- cd /usr/local/src wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.70/bin/apache-tomcat-7.0.70.tar.gz
- tar -zxvf apache-tomcat-7.0.70.tar.gz mv apache-tomcat-7.0.70 /usr/local/tomcat
- vi /etc/profile 添加 TOMCAT_HOME=/usr/local/tomcat source /etc/profile 使其生效
- 驗證上述變量,echo $TOMCAT_HOME
- cd /usr/local/tomcat
- 啟動tomcat bin/startup.sh
- ps aux|grep tomcat 查看是否有進程;netstat -lnp|grep java 查看進程端口 (特別說明,tomcat是調用java,所以顯示的進程為java的進程),可以看到端口號為8080。
tcp 0 0 :::8080 :::* LIST EN 12199/java
8.關閉tomcat bin/shutdown.sh
三,配置tomcat啟動腳本
cd /usr/local/tomcat/bin cp bin/catalina.sh /etc/init.d/tomcat vi /etc/init.d/tomcat
在#!/bin/bash下加上如下幾行:
#chkconfig:345 23 77
#description:tomcat server #Source function library
. /etc/init.d/functions
JAVA_HOME=/usr/local/jdk1.8.0_31
CATALINA_HOME=/usr/local/tomcat //保存並退出
chkconfig --add tomcat //加入服務列表中
chmod 755 tomcat
chkconfig tomcat on //開機自動啟動
/etc/init.d/tomcat start //啟動tocat服務
另外,tomcat是不支持restart重啟的,如果想要重啟的話,需要先關閉它,然后在啟動,即/etc/init.d/tomcat stop /etc/init.d/tomcat start.
四,修改tomcat默認端口
cd /usr/local/tomcat/conf
vi server.xml 搜索8080,找到如下段配置
將8080改為80,改完后重啟tomcat服務即可。
五,給tomcat添加虛擬主機,
1,vi server.xml,找到 </host>然后再添加如下配置,
Host name="www.test.com" appBase="/data/tomcatweb"
unpackWARs="false" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="./" debug="0" reloadable="true" crossContext="true"/>
</Host>
如圖,
保存退出,關閉tocat,啟動tomcat 。
2,創建appbase mkdir -p /data/tomcatweb
vi /data/tomcatweb/index.jsp(寫個java的時間函數)
<html><body><center>
Now time is: <%=new java.util.Date()%>
</center></body></html>
保存退出。
3,測試 curl -x localhost:80 www.test.com
顯示如下:
<html><body><center>
Now time is: Sun Aug 28 06:42:07 CST 2016
</center></body></html>
五,tomcat以普通用戶運行
useradd tomcat
passwd tomcat //設置tomcat賬戶密碼
chown -R tomcat /usr/local/tomcat
切換到tomcat賬戶下,su - tomcat
/etc/init.d/tomcat start ps aux|grep tomcat 可以查看到運行tomcat的服務的用戶為tomcat了。
最好使用如下方法:
su -c '/etc/init.d/tomcat start' tomcat //以tomcat用戶的身份執行這條命令