tomcat

目录

概念

tomcat的特点和功能

tomcat的组件

逻辑流程

安装步骤

tomcat目录的作用

[打开manager app页面](#打开manager app页面)

配置tomcat的虚拟主机


概念

tomcat和php一样,都是用来处理动态页面的。tomcat也可以作为web应用服务器,它是开源的。

它处理的是以.jsp为结尾的文件。tomcat是用java代码写的程序,运行的是java的web应用程序。

tomcat的特点和功能

1.servlet容器 :执行java的servlet,它是服务端的java程序,用来处理客户端的http请求,以及响应

2.jsp容器:javasever page,这是一种动态页面的技术,可以在html的页面里面嵌入java代码

3.自身也是一个http服务器

4.tomcat是一个轻量级的动态页面处理程序,高并发场景不适用

它主要是优化,tomcat自身的优化以及系统的内核优化和jvm优化

servlet:是Java语言当中开发web应用程序的关键组件。功能:处理http请求,生成动态内容以及响应客户端的请求,处理java的业务逻辑,进行会话管理。可以保持用户的状态信息,购物车同步,用户登录等等,也可以转发nginx的动态请求到数据库。

jsp:web应用程序的界面,这个界面的语言是用Java实现的。是以.jsp为结尾的文件(index.jsp)

tomcat的组件

connector:负责对外接受和响应请求,它是tomcat与客户端沟通的一个枢纽。监听端口接受外界请求。它默认端口是8080。接受到了请求之后,传递给其他组件进行处理,处理完成之后回到connector,再响应客户端

container:负责处理业务逻辑,它是由engine host context wrapper四个功能组成

engine:可以用来管理多个虚拟主机,一个service只能有一个engine

host:一个host就是一个主机,也可以叫站点,通过配置host,可以添加多个站点

context:一个context代表一个web应用

wrapper:它是封装器,负责处理最底层的逻辑

service:对外提供外部服务,包含connector和container

tomcat可以有多个service。每个service之间互相是独立的

逻辑流程

安装步骤

1.先安装java

2.添加识别java的配置文件

vim /etc/profile.d/java.sh

export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64

export CLASSPATH=.:JAVA_HOME/lib/tools.jar:JAVA_HOME/lib/dt.jar

export PATH=JAVA_HOME/bin:PATH

3.重启配置source /etc/profile.d/java.sh

4.解压tomcat

tar -xf apache-tomcat-9.0.16.tar.gz

mv apache-tomcat-9.0.16 tomcat

mv tomcat /usr/local

5.启动tomcat

然后 ./startup.sh运行

查看端口启动netstat -antp | grep 8080

访问192.168.233.40:8080

tomcat目录的作用

  1. .bin 存放启动和关闭tomcat脚本的文件。startup.sh shutdown.sh

  2. .conf 存放tomcat的主配置文件,server.xml主配置文件

  3. context.xml :host的默认配置信息

  4. tomcat-user.xml:登录时认证用户和密码的相关信息,manager文件必要赋权修改之后才能打开

  5. lib:tomcat运行时需要的jar包(一般不动)

  6. logs:日志文件,catalina.out 主日志文件

  7. temp:存放tomcat运行时产生的文件

  8. webapps:用来部署web应用的目录,类似于nginx的html

打开manager app页面

  1. cd /usr/local/tomcat/webapps/manager/META-INF
  1. vim context.xml

3.在conf,tomcat-users.xml中,添加账户密码

cd /usr/local/tomcat/

cd conf/

vim tomcat-users.xml

<role rolename="manager-gui"/>

<user username="tomcat" password="tomcat" roles="manager-gui"/>

4.cd bin/

./stutdown.sh

./startup.sh

netstat -antp | grep 8080

访问192.168.233.40:8080点击tomcat输入账号密码tomcat

配置tomcat的虚拟主机

vim server.xml

删除147行并添加两个站点

<Host name="www.xy102.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">

<Context docBase="/usr/local/tomcat/webapps/xy102" path="" reloadable="true" />

</Host>

<Host name="www.benet.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">

<Context docBase="/usr/local/tomcat/webapps/benet" path="" reloadable="true" />

</Host>

vim /etc/hosts做映射

实现结果

相关推荐
勤奋的知更鸟9 分钟前
Java编程之组合模式
java·开发语言·设计模式·组合模式
千|寻9 分钟前
【画江湖】langchain4j - Java1.8下spring boot集成ollama调用本地大模型之问道系列(第一问)
java·spring boot·后端·langchain
爱编程的喵23 分钟前
深入理解JavaScript原型机制:从Java到JS的面向对象编程之路
java·前端·javascript
on the way 12334 分钟前
行为型设计模式之Mediator(中介者)
java·设计模式·中介者模式
保持学习ing37 分钟前
Spring注解开发
java·深度学习·spring·框架
techzhi38 分钟前
SeaweedFS S3 Spring Boot Starter
java·spring boot·后端
异常君1 小时前
Spring 中的 FactoryBean 与 BeanFactory:核心概念深度解析
java·spring·面试
weixin_461259411 小时前
[C]C语言日志系统宏技巧解析
java·服务器·c语言
cacyiol_Z1 小时前
在SpringBoot中使用AWS SDK实现邮箱验证码服务
java·spring boot·spring
t198751281 小时前
Linux 上的 Tomcat 端口占用排查
linux·tomcat·firefox