Tomcat介绍:
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。
Tomcat 的安装:
Tomcat基于java虚拟机运行事先要部署JDK
安装JDK的两种方法:
1.安装系统base源中的rpm包;
yum -y install java-1.8.0-openjdk-devel
java -version 显示java程序的版本信息
2.直接官网下载RPM包:
rpm -ivh jdk-8u144-linux-x64.rpm
注意:安装完成后,要配置JAVA_HOME环境变量,指向java的安装路径;
vim /etc/profile.d/java.sh export JAVA_HOME=/usr/java/latest export PATH=$JAVA_HME/bin:$PATH OpenJDK:AVA_HOME=/usr Oracle JDK:JAVA_HOME=/usr/java/jdk_VERSION
安装Tomcat方法:
1.安装系统自带rpm包
yum install tomcat tomcat-lib tomcat-admin-webapps tomcat-docs-webapp tomcat-webapps systemctl start tomcat.service ss -tnlp #查看8080端口是否打开
rpm包安装的程序环境:
配置文件目录:/etc/tomcat
主配置文件:/etc/tomcat/server.xml
webapps存放位置:/var/lib/tomcat/webapps/
环境配置文件:/etc/sysconfig/tomcat 调整jdk内存使用大小等初始值
2.安装官网下载的tar包
useradd -r tomcat tar xvf apache-tomcat-7.0.78.tar.gz -C /usr/local cd /usr/local ln -sv apache-tomcat-7.0.78 tomcat chown -R tomcat:tomcat /usr/local/tomcat/* cd tomcat/bin vim /etc/profile.d/tomcat.sh export CATALINA_BASE=/usr/local/tomcat export PATH=$CATALINA_BASE/bin:$PATH catalina.sh –help catalina.sh start
tomcat程序环境:
tomcat的目录结构:
bin:脚本,及启动时用到的类;
conf:配置文件目录;主配置文件server.xml
lib:库文件,Java类库,jar;
logs:日志文件目录;
temp:临时文件目录;
webapps:webapp的默认目录;
work:工作目录;存放编译后的字节码文件;
tomcat的配置文件构成:
server.xml:主配置文件;
web.xml:每个webapp只有“部署”后才能被访问,它的部署方式通常由web.xml进行定义,其存放位置为WEB-INF/目录中;此文件为所有的webapps提供默认部署相关的配置;
context.xml:每个webapp都可以使用的配置文件,它通常由专用的配置文件context.xml
来定义,其存放位置为WEB-INF/目录中;此文件为所有的webapps提供默认配置;
tomcat-users.xml:用户认证的账号和密码文件;
catalina.policy:当使用-security选项启动tomcat时,用于为tomcat设置安全策略;
catalina.properties:Java属性的定义文件,用于设定类加载器路径,以及一些与JVM调优相关参数;
logging.properties:日志系统相关的配置
Tomcat 文件组成与结构:
Tomcat核心文件server.xml结构
<Server> <Service> <connector/> <connector/> … <Engine> <Host> <Context/> <Context/> … </Host> <Host> … </Host> … </Engine> </Service> </Server> |
每一个组件都由一个Java“类”实现,这些组件大体可分为以下几个类型:
顶级组件:Server
服务类组件:Service
连接器组件:http, https, ajp(apache jserv protocol)
容器类:Engine, Host, Context 部署应用程序的组件
被嵌套类:valve, logger, realm, loader, manager, …
集群类组件:listener, cluster, …
JSP WebAPP的组织结构:
/: webapps的根目录
index.jsp:主页;
WEB-INF/:当前webapp的私有资源路径;通常用于存储当前webapp的 web.xml和context.xml配置文件;
META-INF/:类似于WEB-INF/;
classes/:类文件,当前webapp所提供的类;
lib/:类文件,当前webapp所提供的类,被打包为jar格式;
webapp归档格式:
.war:webapp 归档文件
.jar:EJB的类打包文件(类库);
.rar:资源适配器类打包文件;
.ear:企业级webapp;
部署(deploy)webapp的相关操作:
deploy:将webapp的源文件放置于目标目录(网页程序文件存放目录),配置tomcat服务器能够基于web.xml和context.xml文件中定义的路径来访问此webapp;将其特有的类和依赖的类通过class loader装载至JVM;
部署有两种方式:
自动部署:auto deploy
手动部署:
冷部署:把webapp复制到指定的位置,而后才启动tomcat;
热部署:在不停止tomcat的前提下进行部署;
部署工具:manager、ant脚本、tcd(tomcat client deployer)等;
undeploy:拆除(反部署),停止webapp,并从tomcat实例上卸载webapp;
start:启动处于停止状态的webapp;
stop:停止webapp,不再向用户提供服务;其类依然在jvm上;
redeploy:重新部署;
实验:手动提供一测试类应用,并冷部署:
环境:centos7服务器一台
准备:关闭防火墙,和selinux
Tomcat安装:
yum install tomcat tomcat-lib tomcat-admin-webapps tomcat-docs-webapp tomcat-webapps
3.构建配置文件
mkidr -pv /usr/share/tomcat/webapps/test/{classes,lib,WEB-INF,META-INF}
手动创建文件/usr/share/tomcat/webapps/test/index.jsp
<%@ page language="java" %> <%@ page import="java.util.*" %> <html> <head> <title>Test Page</title> </head> <body> <% out.println("hello world"); %> </body> </html> |
#systemctl start tomcat.service
4.访问测试:
5.配置manager热部署工具
vim /etc/tomcat/tomcat-users.xml #添加两行
点击Manager App
输入用户名:tomcat 密码:tomcat
管理界面如图:
本文以Java应用solo-2.2.0.war为例:
上图中,把 solo-2.2.0.war上传,然后Deploy
部署成功界面:
本文出自 “linux运维” 博客,请务必保留此出处http://arm2012.blog.51cto.com/2418467/1980450
原文地址:http://arm2012.blog.51cto.com/2418467/1980450