下载安装JDK(Tomcat在启动前必须安装JDK及Java的运行与开发环境,因为Tomcat本身就是有Java编写的,JDK中有Java的API,JVM等Java运行和开发的最小环境)
[root@node1 tool]# tar -zxf jdk-8u111-linux-x64.tar.gz -C /usr/local/java/
输出相关的环境变量
[root@node1 jdk1.8.0_111]# vim /etc/profile
export JAVA_HOME=/usr/local/java/jdk1.8.0_111
export JRE_HOME=/usr/local/java/jdk1.8.0_111/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
source(读)以下这个文件
[root@node1 java]# source /etc/profile
可以看到JDK1.8已经安装
[root@node1 java]# java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
下载安装Tomcat
[root@node1 tool]# tar -zxf apache-tomcat-7.0.73.tar.gz -C /usr/local/
[root@node1 tool]# cd /usr/local/
drwxr-xr-x. 2 mysql mysql 4096 Sep 23 2011 src
[root@node1 local]# ln -sv apache-tomcat-7.0.73/ tomcat
[root@node1 local]# cd tomcat/
root@node1 tomcat]# ls bin/
bootstrap.jar commons-daemon-native.tar.gz digest.sh startup.battool-wrapper.s catalina.bat configtest.bat setclasspath.bat startup.sh version.bat
catalina.sh configtest.sh setclasspath.sh tomcat-juli.jar version.sh
#里面全部是一些.sh的脚本和.jar的Java归档文件;Tomcat就是 用Java写的所以启动时会调用一些Java库,.bat为Windows的批处理脚本,用于windows启动时调用,其中catalina.sh为核心脚本
[root@node1 tomcat]# ls conf
Catalina catalina.properties logging.properties tomcat-users.xml
catalina.policy context.xml server.xml web.xml
#其中server.xml为主配置文件;
#tomcat-users.xml为用户认证文件,Tomcat启动后会将这个文件读进内存中完成账号和密码的检测认证,所以这个文件的安全性很重要;#web.xml为Tomcat默认的应用程序部署描述符,一个web应用程序所谓的部署就是将它放在Tomcat某一个context某一个host能够访问到的路 径下,及将web应用程序所依赖的类装载进JVM的过程;
#context.html默认为上下文提供的配置文件
#catalina.pro[erties 用来定义应用程序自身属性的(启动JVM要定义许多属性),如所使用的内存大小,所使用的字符串缓冲池的大小,你的server loader加载器是什么,等等
#Catalina.policy用来定义Tomcat自身的安全和资源授权策略,如定义通过互联网访问时,哪些资源用户可以访问哪些资源用户不能访问;哪些资源能被装载,哪些资源不能被装载等等
#logging.pro[erties 用来定义你的日志级别,日志文件的路径等等
一般来说如果你不定义服务器自身的属性的话,只需修改.xml的文件
[root@node1 conf]# vim server.xml
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN">
#在Telnet的8005端口发一个shutdown就可以把Tomcat停掉,建议关掉(危险)
Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<!-- Security listener. Documentation at /docs/config/listeners.html
<Listener className="org.apache.catalina.security.SecurityListener" />
-->
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
#listener为一大堆的侦听器,是程序员或者应用程序在调试时关闭或者启动某个容器时用的组件
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
#全局命名资源,这里定义了一个全局命名资源,用来实现用户的认证
<Service>
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine defaultHost="localhost">