部署tomcat

Tomcat介绍

  • 免费的、开放源代码的Web应用服务器
  • Apache软件基金会(Apache Software Foundation)Jakarta项目中的一个核心项目
  • 由Apache、Sun和一些公司及个人共同开发而成
  • 深受Java爱好者的喜爱,并得到部分软件开发商的认可
  • 目前比较流行的Web应用服务器

Tomcat核心组件

在这里插入图片描述

Tomcat处理请求过程

源码安装Java

也可以使用yum安装
环境变量配置为

 vim /etc/profile
 export JAVA_HOME=/usr/lib/jvm/java
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin
  • 1、到官网下载
jdk-8u221-linux-x64.tar.gz
  • 2、解压安装包,重命名为jdk
 tar -zvxf jdk-8u221-linux-x64.tar.gz
 mv jdk1.8.0_221 jdk
  • 3、安装jdk到/usr/local/
[root@locahost home]# mv jdk /usr/local/
[root@locahost home]# cd /usr/local/
  • 4、配置环境变量
vim /etc/profile

export JAVA_HOME=/usr/local/jdk
export JRE_HOME=/usr/local/jdk/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
  • 5、使立即生效
source /etc/profile
  • 6、验证
[root@locahost local]# java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

安装Tomcat

  • 解压源码:
tar -xzf apache-tomcat-9.0.26.tar.gz
mv apache-tomcat-9.0.26 /usr/local/tomcat
  • 启动tomcat
cd /usr/local/tomcat
bin/startup.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk/jre
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.    启动成功
  • 查看端口
    Tomcat默认运行在8080端口
[root@localhost tomcat]# netstat -antp | grep 8080
tcp6       0      0 :::8080                 :::*                    LISTEN      4703/java           

  • 网页验证
    在这里插入图片描述
  • 关闭tomcat命令
/usr/local/tomcat/bin/shutdown.sh

Tomcat目录结构

在这里插入图片描述

Tomcat配置相关说明

Tomcat的主目录为/usr/local/tomcat

  • 主要目录说明
    bin:存放Windows或Linux平台上启动和关闭Tomcat的脚本文件
    conf:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xmlweb.xml
    lib:存放Tomcat运行需要的库文件(JARS)
    logs:存放Tomcat执行时的LOG文件
    webapps:Tomcat的主要Web发布目录(包括应用程序示例)
    work:存放jsp编译后产生的class文件
  • 配置文件说明
    catalina.polocy:权限控制配置文件
    catalina.properties:Tomcat属性配置文件
    context.xml:上下文配置文件
    logging.properties:日志log相关配置文件
    server.xml:主配置文件
    tomcat-users.xml:manager-gui管理用户配置文件(Tomcat安装后提供一个manager-gui的管理界面,通过配置该文件可以开启访问)
    web.xml:Tomcat的servlet、servlet-mapping、filter、MIME等相关配置

Tomcat主配置文件说明

  • server.xml为Tomcat的主要配置文件,通过配置该文件,可以修改Tomcat的启动端口、网站目录、虚拟主机、开启https的重要功能
  • 整个server.xml由以下结构构成:< Server > 、< Service > 、< Connector/ > 、< Engine > 、< Host > 、< /Context > 、< /Host > < /Engine > 、< /service > 和< /Server >

Tomcat Server的组成部分

  • Server:代表了整个Catalina的serlet容器
  • Service:Service是这样一个集合:它由一个或者多个Connector组成,以及一个Engine,负责处理所有Connector所获得的客户请求
  • Connector:一个Connector将在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处理,从Engine处获得回应并返回客户
    TOMCAT有两个典型的Connector,一个直接侦听来自browser的http请求,一个侦听来自其它WebServer的请求
    Coyote Http/1.1 Connector 在端口8080处侦听来自客户browser的http请求
    Coyote JK2 Connector 在端口8009处侦听来自其它WebServer(Apache)的servlet/jsp代理请求
  • Engine:Engine下可以配置多个虚拟主机Virtual Host,每个虚拟主机都有一个域名
    当Engine获得一个请求时,它把该请求匹配到某个Host上,然后把该请求交给该Host来处理
    Engine有一个默认虚拟主机,当请求无法匹配到任何一个Host上的时候,将交给该默认Host来处理
  • 代表一个Virtual Host,虚拟主机,每个虚拟主机和某个网络域名Domain Name相匹配
    每个虚拟主机下都可以部署(deploy)一个或者多个Web App,每个Web App对应于一个Context,有一个Context path
    当Host获得一个请求时,将把该请求匹配到某个Context上,然后把该请求交给该Context来处理
    匹配的方法是“最长匹配”,所以一个path==""的Context将成为该Host的默认Context
    所有无法和其它Context的路径名匹配的请求都将最终和该默认Context匹配
  • Context:一个Context对应于一个Web Application,一个Web Application由一个或者多个Servlet组成
    Context在创建的时候将根据配置文件$CATALINA_HOME/conf/web.xml和$WEBAPP_HOME/WEB-INF/web.xml载入Servlet类
    当Context获得请求时,将在自己的映射表(mapping table)中寻找相匹配的Servlet类
    如果找到,则执行该类,获得请求的回应,并返回

虚拟主机配置

  • 有多个项目同时运行时,一台服务器不建议运行多个Tomcat服务,需要配置虚拟主机
  • 通过两个域名访问到不同的项目内容
    步骤:
    • 创建www和bbs项目目录和文件
    [root@localhost ~]# mkdir /usr/local/tomcat/webapps/www
    [root@localhost ~]# echo "This is www page\!" > /usr/local/tomcat/webapps/www/index.jsp
    [root@localhost ~]# mkdir /usr/local/tomcat/webapps/bbs
    [root@localhost ~]# echo "This is bbs page\!" > /usr/local/tomcat/webapps/bbs/index.jsp
    
    • 修改Tomcat主配置文件usr/local/tomcat/conf/server.xml的< Host/>部分

      <Host name="www.test.com" appBase="/usr/local/tomcat/webapps"
       unpackWARs="true" autoDeploy="true" xmlValidation="false" 
       xmlNamespaceAware="false">
      		<Context docBase="/usr/local/tomcat/webapps/www" 
         				path="" reloadable="true" />
      </Host>
      
      <Host name="bbs.test.com" appBase="/usr/local/tomcat/webapps"
       unpackWARs="true" autoDeploy="true" xmlValidation="false" 
       xmlNamespaceAware="false">
      		<Context docBase="/usr/local/tomcat/webapps/bbs" 
         				path="" reloadable="true" />
      </Host>
      
    • 重启Tomcat服务

    [root@localhost ~]# /usr/local/tomcat/bin/shutdown.sh
    [root@localhost ~]# /usr/local/tomcat/bin/startup.sh
    
    • 测试
      Tomcat默认端口为8080在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值