一,安装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.shexport 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用户的身份执行这条命令