关闭页面特效

TomCat

0|1服务器分类


image-20230504203728409

0|1版本说明


image-20230504210011577

0|1概念


Tomcat是一个能够处理请求并产生响应的应用程序。Tomcat实现了javaEE平台下的一些技术规范,所以我们可以在Tomcat中运行我们所编写的ServletJSP

0|1架构图


image-20230505141542182

Server组件

启动一个server实例 (即一个JVM进程),它监听在8005端口以接收shutdown命令Server的定义不能使用同一个端口,这意味着如果在同一个物理机上启动了多个Server实例,必须配置它们使用不同的端口。

<Server port="8005" shutdown="SHUTDOWN">

port: 接收shutdown指令的端口,默认为8005;

shutdown: 发往此Server用于实现关闭tomcat实例的命令字符串,默认为SHUTDOWN;

远程客户端工具

安装telnet客户端:控制面板-安装卸载程序-启动window程序

查看监听端口

netstat -ano (-a所有监听socket信息,-n基于所有的ip显示,-o显示所有进程的pid

0|1官网


https://tomcat.apache.org/

0|1安装、配置


下载:https://tomcat.apache.org/

安装:直接解压就可以了,建议:不要有中文的目录,目录层次不要太深

0|1目录结构详解


bin存放tomcat的程序,主要有两大类,以.sh结尾(linux命令),以.bat结尾的(window命令) conf存放tomcat的配置文件

image-20230505093256978

0|1配置文件介绍


context.xml

context.xml 是Tomcat 公用的环境配置。 Tomcat 服务器会定时去扫描这个文件。一旦发现文件被修改(时间戳改变了) ,就会自动重新加载这个文件,而不需要重启服务器

web.xml

Web应用程序描述文件,都是关于是Web应用程序的配置文件。所有Web应用的 web.xml文件的父文件。

server.xml

是 tomcat 服务器的核心配置文件,server.xml的每一个元素都对应了 tomcat中的一个组件,通过对xml中元素的配置,实现对 tomcat中的各个组件和端口的配置。

tomcat-users.xml

配置访问Tomcat的用户以及角色的配置文件。

0|1解决控制台乱码


控制台产生乱码的原因是在Tomcat在输出日志中使用的是UTF-8编码,而我们中文的Windows操作系统使用的是GBK编码。由于编码格式不统一,所以出现了乱码。

0|1解决方式


修改conf目录中的logging.properties文件重新指定的编码方式。

java.util.logging.ConsoleHandler.encoding = GBK

0|1启动、关闭


启动:双击:bin\startup.bat 关闭: 直接×掉运行窗口:强制关闭 bin\shutdown.bat:正常关闭 Ctrl+C:正常关闭

0|1启动常见的问题


没有配置JAVA的环境变量

img

img

img

控制台中文乱码

修改conf/logging.properties

将所有的UTF-8换成GBK

0|1Tomcat – 基本使用


修改启动端口号

conf/server.xml

img

注:HTTP协议默认端口号为80,如果将Tomcat端口号改为80,则将来访问Tomcat时,将不用输入端口号

启动时可能出现的问题

端口号冲突:找到对应程序,将其关闭掉

img

启动窗口一闪而过:检查JAVA_HOME环境变量是否正确配置

0|1Tomcat – 部署项目


Tomcat 部署项目:

将项目放置到 webapps 目录下, 即部署完成

直接将项目复制到webapps目录下

img

采用压缩文件.war的方式

1.将整个项目使用压缩工具打包成一个zip文件,注:在目录的下一级打包 2.zip的扩展名为war 3.复制到webapps目录下,tomcat会自动解压成一个同名的目录。 注意:必须是zip压缩包,里面的文件不能有中文名

idea中创建web项目

img

img

2020版3月以后

img

IDEA中使用 Tomcat方式 – 集成本地Tomcat

img

img

0|1配置Tomcat Manager


什么是Tomcat Manager

Tomcat Manager是Tomcat自带的、用于对Tomcat自身以及部署在Tomcat上的应用进行管理的web应用。默认情况下,Tomcat Manager是处于禁用状态的。准确的说,TomcatManager需要以用户角色进行登录并授权才能使用相应的功能,不过Tomcat并没有配置任何默认的用户,因此我们需要先进行用户配置后才能使用Tomcat Manager。

配置Tomcat Manager的访间用户

Tomcat Manager中没有默认用户,我们需要在tomcat-users.xml文件配置。TomcatManager的用户配置需要配置两个部分: 角色配置、用户名及密码配置。

Tomcat Manager中的角色分类

manager-gui角色: 允许访问HTML GUI和状态页面(即URL路径为/manager/html/*) manager-script角色: 允许访问文本界面和状态页面(即URL路径为/manager/text/*) manager-jmx角色: 允许访问JMX代理和状态页面(即URL路径为/manager/jmxproxy/*) manager- status角色: 仅允许访问状态页面(即URL路径为/manager/status/*)

image-20230515083840817

配置用户及角色

修改tomcat-user.xml

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

解除非本机IP限制

image-20230515085847221

image-20230515085651366

进入Tomcat的webapps目录下,打开webapps/manager/META-INF/context.xml文件修改下面这段配置

<context antiresourcelocking="false" privileged="true".<!-- 把下面这段注释掉 --> <!-- <Valve className="org.apache.catalina.valves.RemoteAddrValveallow="127\. d+\. d+ . d+l::110:0:0:0:0:0:0:1" /> --> </context>

0|1Tomcat体系架构


image-20230508173938651

tomcat工作原理

Tomcat是一个能够处理请求并产生响应的应用程序。Tomcat实现了JavaEE平台下的一些技术规范,所以我们可以在Tomcat中运行我们所编写的Servlet、JSP。

image-20230515090138171

conf/servlet.xml配置文件

<?xml version="1.0"encoding="UTF-8"?> <Server port="8005" shutdown="SHUTDOWN"> <Service name="Catalina"> <!-- 连接器监听端口是 8080,默认通讯协议是 HTTP/1.1 --> <Connector port="8080” protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443” /> <!-- 名字为 catalina 的引擎,其默认的虚拟主机是 1ocalhost --> <Engine name="Catalina" defaultHost="Tocalhost"> <!-- 名字为 1ocalhost 的虚拟主机,其目录是 webapps--> <Host name="Tocalhost"appBase="webappsunpackWARs="true"autoDeploy="true"></Host> </Engine> </service> Server

0|1Tomcat组件


Server组件

启动一个server实例(即一个JVM进程),它监听在8005端口以接收shutdown命令Server的定义不能使用同一个端口,这意味着如果在同一个物理机上启动了多个Server实例,必须配置它们使用不同的端口。

<Server port="8005” shutdown="SHUTDOWN">

port: 接收shutdown指令的端口,默认为8005;

shutdown: 发往此Server用于实现关闭tomcat实例的命令字符串,默认为SHUTDOWN;


__EOF__

作  者YXH
出  处https://www.cnblogs.com/YxinHaaa/p/17370701.html
关于博主:编程路上的小学生,热爱技术,喜欢专研。评论和私信会在第一时间回复。或者直接私信我。
版权声明:署名 - 非商业性使用 - 禁止演绎,协议普通文本 | 协议法律文本
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!

posted @   YxinHaaa  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
0
0
关注
跳至底部
点击右上角即可分享
微信分享提示