Tomcat 简介与 Linux 环境部署

Tomcat 简介与 Linux 环境部署

一、Tomcat 简介

Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。

  • 可认为:配置好 Apache 服务器后,Apache 响应 HTML 页面访问请求;Tomcat 是 Apache 服务器的扩展,但运行时独立进程运行。
  • 核心定位:免费开源的 Servlet 容器,用于运行 Java 程序,是开发和调试 Servlet、JSP 程序的首选。
  • 依赖环境:Tomcat 本身是运行 Java 程序的容器,其运行依赖 JDK 环境。

常见中间件选型

  • 本地开发、小项目/个人开发:Tomcat
  • Linux 系统:jetty 或 apache httpd
  • 大型项目:JBOSS 或 WebLogic
  • 大项目/商业项目:WebLogic/WebSphere(其他还有 jboss、glasshfish 等)
  • 示例项目/小项目:jetty
  • 常规项目:Tomcat 即可满足需求

二、实操部署步骤

1. 关闭防火墙和 selinux

(注:原始实操未细分临时/永久关闭,按原始指令执行)

2. 安装 java

bash 复制代码
[root@hrz1 ~]# yum -y install java-11-openjdk

3. 解压 tomcat 到 /usr/local/ 目录下

bash 复制代码
[root@hrz1 ~]# tar -xzf apache-tomcat-10.0.23.tar.gz  -C /usr/local/
[root@hrz1 ~]# cd /usr/local/
[root@hrz1 local]# ln -s apache-tomcat-10.0.23/ tomcat

4. 自定义 Hello World 的 Java 测试网页

bash 复制代码
[root@hrz1 local]# mkdir /usr/local/tomcat/webapps/test
[root@hrz1 local]# cd /usr/local/tomcat/webapps/test 
[root@hrz1 test]#  vim index.jsp

index.jsp 中写入以下内容:

jsp 复制代码
<html>

<head>
        <title>test.page</title>
</head>

<body>

<h1>Hello world</h1>

</body>
</html>

5. 启动 tomcat

bash 复制代码
[root@hrz1 test]# cd /usr/local/tomcat      
[root@hrz1 tomcat]# bin/startup.sh 
# 验证 tomcat 进程
[root@hrz1 tomcat]# ps  -ef  | grep  tomcat

(执行后应显示类似以下进程信息)

复制代码
root      70048      1  0 11:11 pts/0    00:00:04 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root      70141   9738  0 11:19 pts/0    00:00:00 grep --color=auto tomcat

6. 测试访问

7. 配置并访问 Host Manager 界面

直接点击会有提示操作

步骤1:修改 tomcat-users.xml 文件
bash 复制代码
[root@hrz1 tomcat]# vim /usr/local/tomcat/conf/tomcat-users.xml 

</tomcat-users> 行上面添加以下内容(角色名固定为 admin-gui,用户名/密码自定义):

xml 复制代码
  <user username="tomcat" password="123456" roles="admin-gui"/>
</tomcat-users>
步骤2:修改 host-manager 的 context.xml 文件
bash 复制代码
[root@hrz1 tomcat]# vim /usr/local/tomcat/webapps/host-manager/META-INF/context.xml 

确保 Valve 标签内容为:

xml 复制代码
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="192\.168\.100\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
步骤3:重启 tomcat
bash 复制代码
[root@hrz1 tomcat]# /usr/local/tomcat/bin/catalina.sh stop
[root@hrz1 tomcat]# /usr/local/tomcat/bin/catalina.sh start
步骤4:登录测试

访问 Host Manager 界面,输入用户名 tomcat、密码 123456 登录。

8. 配置并访问 Server Status

步骤1:修改 tomcat-users.xml 文件
bash 复制代码
[root@hrz1 tomcat]# vim /usr/local/tomcat/conf/tomcat-users.xml 

</tomcat-users> 行上面添加以下内容:

xml 复制代码
  <role rolename="admin-gui"/>
  <role rolename="manager-gui"/>
  <user username="tomcat" password="123456" roles="admin-gui,manager-gui"/>
</tomcat-users>
步骤2:修改 manager 的 context.xml 文件
bash 复制代码
[root@hrz1 tomcat]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml 

确保 Valve 标签内容为:

xml 复制代码
 <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="192\.168\.100\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
步骤3:重启 tomcat
bash 复制代码
[root@hrz1 tomcat]# /usr/local/tomcat/bin/catalina.sh stop 
[root@hrz1 tomcat]# /usr/local/tomcat/bin/catalina.sh start
步骤4:登录测试

访问 Server Status 界面,输入用户名 tomcat、密码 123456 登录。

9. 访问 Manager App

访问 Manager App 时无需重复输入密码(因已登录 Server Status 界面,会话保持)。

户名 tomcat、密码 123456 登录。

外链图片转存中...(img-dsAVceY8-1758700258457)

9. 访问 Manager App

访问 Manager App 时无需重复输入密码(因已登录 Server Status 界面,会话保持)。

相关推荐
28岁青春痘老男孩2 小时前
JDK8+SpringBoot2.x 升级 JDK 17 + Spring Boot 3.x
java·spring boot
方璧3 小时前
限流的算法
java·开发语言
元Y亨H3 小时前
Nacos - 服务注册
java·微服务
曲莫终3 小时前
Java VarHandle全面详解:从入门到精通
java·开发语言
一心赚狗粮的宇叔3 小时前
中级软件开发工程师2025年度总结
java·大数据·oracle·c#
正在学习前端的---小方同学3 小时前
Harbor部署教程
linux·运维
奋进的芋圆3 小时前
DataSyncManager 详解与 Spring Boot 迁移指南
java·spring boot·后端
计算机程序设计小李同学4 小时前
个人数据管理系统
java·vue.js·spring boot·后端·web安全
小途软件4 小时前
用于机器人电池电量预测的Sarsa强化学习混合集成方法
java·人工智能·pytorch·python·深度学习·语言模型
alonewolf_994 小时前
Spring MVC启动与请求处理全流程解析:从DispatcherServlet到HandlerAdapter
java·spring·mvc