当前位置: 首页 > news >正文

Tomcat 简介与 Linux 环境部署 - 指南

Tomcat 简介与 Linux 环境部署

一、Tomcat 简介

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

常见中间件选型

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

二、实操部署步骤

1. 关闭防火墙和 selinux

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

2. 安装 java

[root@hrz1 ~]# yum -y install java-11-openjdk

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

[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 测试网页

[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 中写入以下内容:

test.page

Hello world

5. 启动 tomcat

[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. 测试访问

  • 访问 tomcat 首页:http://192.168.100.10:8080
    在这里插入图片描述

  • 访问 hello world 测试页:http://192.168.100.10:8080/test/
    在这里插入图片描述

7. 配置并访问 Host Manager 界面

直接点击会有提示操作

在这里插入图片描述

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

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

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

确保 Valve 标签内容为:

<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
[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 文件
[root@hrz1 tomcat]# vim /usr/local/tomcat/conf/tomcat-users.xml 

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

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

确保 Valve 标签内容为:

<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
[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 界面,会话保持)。

在这里插入图片描述

http://www.jsqmd.com/news/4813/

相关文章:

  • 深入解析:GraphRAG(知识图谱结合大模型)对人工智能中自然语言处理的深层语义分析的影响与启示
  • B站python入门学习---第二阶段第二章数据库、SQL和MySQL
  • C++项目:仿muduo库高并发服务器 - 实践
  • 完整教程:zk管理kafkakafka-broker通信
  • 域泛化DomainBed的评价指标含义解释
  • JUC: 线程锁
  • 上证指数历年每月涨跌统计 - Leone
  • InteractiveCommunication Problems
  • JSON 框架混用避坑指南:FastJSON vs Jackson
  • 实用指南:网络通信协议全解析:HTTP/UDP/TCP核心要点
  • 企业级大数据技术栈:基于Hadoop+Spark的全球经济指标分析与可视化环境实践
  • 若邻接矩阵是三角矩阵,则存在拓扑序列;反之则不一定成立
  • Gateway-断言 - 指南
  • 20250927Sat VIM 在函数内部任一行,按 [[ 即跳转到函数的开头
  • macOS 多 Java 版本管理(jenv 方案)
  • AI 落地教育智慧招生:从 “热线占线” 到 “724 小时精准应答” 的实践分享
  • 软件技术基础第一次课程
  • 石子合并(一排的和一个环的)
  • 思维题练习
  • NXP - 用MCUXpresso IDE导入lpcopen_2_10_lpcxpresso_nxp_lpcxpresso_1769.zip中的工程 - 教程
  • US$42 BDM01 Adapter for Yanhua Mini ACDP Module1 BMW CAS1-CAS4+
  • spatial项目的主要领导者斯坦福大学ppl实验室的 Kunle Olukotun 教授和 Christos Kozyrakis 教授
  • 程序杂谈:概述
  • 字符串基础
  • Kubernetes 进阶实战:CRD、Gateway API 与优先级调度 - 实践
  • 初识MYSQL —— 数据库基础 - 指南
  • 多态下,构造函数和析构函数的顺序,以及父类、子类的转换
  • US$49 B48 amp; MSV90 ISN Reading via OBD Authorization for Yanhua Mini ACDP
  • 在CodeBolcks下wxSmith的C++编程教程——使用 wxGrid
  • 题解:P12479 [集训队互测 2024] 长野原龙势流星群