Tomcat是Apache软件基金会Jakarta项目中的一个核心项目,主要实现了Java EE中的Servlet、JSP规范,同时也提供HTTP服务,是主流的、免费开源的Java Web轻量级应用服务器。
一、安装Tomcat:
1、 安装JDK(下载地址https://www.oracle.com/technetwork/java/javase/downloads/index.html):
# rpm -ivh jdk-8u181-linux-x64.rpm
2、 配置JDK环境变量:# vim /etc/profile.d/jdk.sh
export JAVA_HOME=/usr/java/latest
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
# . /etc/profile.d/jdk.sh
# echo $JAVA_HOME
# java -version
3、 解压Tomcat(下载地址http://tomcat.apache.org/):
# tar -xf apache-tomcat-8.0.53.tar.gz -C /usr/local
# cd /usr/local
# ln -sv apache-tomcat-8.0.53 tomcat
Tomcat目录结构说明:
Ø bin:脚本文件存放目录
Ø conf:配置文件存放目录
Ø lib:Tomcat运行依赖的jar文件存放目录
Ø logs:日志文件存放目录
Ø temp:临时文件存放目录
Ø webapps:应用程序默认部署根目录,每个文件夹都是一个项目,其中ROOT是一个特殊的项目,在地址栏中没有给出项目名时,对应的就是ROOT项目
Ø work:工作目录,编译后的文件都存放在此目录中,清空work目录,重启Tomcat,可以达到清除缓存的作用
conf目录下的配置文件说明:
Ø catalina.policy:当使用-security选项启动Tomcat实例时会读取此配置文件来实现其安全运行策略
Ø catalina.properties:Java属性的定义文件,用于设定类加载器路径等以及一些JVM性能相关的调优参数
Ø context.xml:对于所有应用程序的默认配置
Ø logging.properties:日志相关的配置信息
Ø server.xml:主配置文件
Ø tomcat-users.xml:用户认证的账号密码、管理身份验证以及访问控制权限的配置文件
Ø web.xml:全局的web应用程序部署描述文件,可以设置Tomcat支持的文件类型,此文件用于为所有的webapp提供默认部署相关的配置
server.xml配置文件的层次结构:
Ø Server:顶级组件,代表一个Tomcat实例
Ø Service:将Connector关联至Engine的组件,1个Service只能包含1个Engine组件和1个或多个Connector组件
Ø Connector:接收并解析用户请求,将请求映射为Engine中运行的代码,之后将运行结果构建成响应报文
Ø Engine:处理请求的Servlet引擎组件,即Catalina Servlet引擎,它检查每一个请求的HTTP首部信息以辨别此请求应该发往哪个Host或Context,并将请求处理后的结果返回给相应的客户端
Ø Host:类似httpd中的虚拟主机
Ø Context:指定web应用程序的根目录,以便Servlet容器能够将用户请求发往正确的位置
Ø Valve:用来拦截请求并在将其转至目标之前进行某种处理操作,类似于Servlet规范中定义的过滤器
Ø Logger:用于记录组件内部的状态信息,可被用于除Context之外的任何容器中
Ø Realm:用于用户的认证和授权,在配置一个应用程序时,管理员可以为每个资源或资源组定义角色及权限,而这些访问控制功能的生效需要通过Realm来实现
4、 配置Tomcat环境变量:# vim /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
# . /etc/profile.d/tomcat.sh
# catalina.sh version
# catalina.sh --help
5、 启动Tomcat:
# catalina.sh start 或 # startup.sh
启动后会默认监听TCP的8080、8009和8005端口
查看java进程:# ps -ef | grep java
查看日志文件:
浏览器中访问http://192.168.1.145:8080