欢迎光临
我们一直在努力

CentOS 7 部署 Tomcat 10:从 Java 环境、首页修改到固定公网访问

前言

我对这类 Java Web 部署教程的要求其实很低:别一上来讲一堆架构,先让我看到页面。

Java 能不能跑、Tomcat 能不能启动、8080 能不能打开,这三件事先确认。只要这条最小链路成立,后面改首页、换自己的项目、再做公网访问,都会容易很多。

原文里有一个我很喜欢的小细节:Tomcat 安装成功以后,作者没有只停在默认首页,而是真的进了 webapps/ROOT,打开 index.jsp,在 Home 前面加上了“小单的”几个字,再重启 Tomcat 看页面变化。

这个动作很小,但很有“实操感”。

所以这篇我会保留一个比较明确的人物性格:

喜欢先做出一个最小可用结果,再一点点往上加;看到页面真的发生变化,才觉得这一层算跑通。

全文也按照这个人的节奏来:

OpenJDK → Tomcat → 默认页面 → 修改 index.jsp → 重启确认 →cpolar→ 随机公网地址 → 固定二级子域名。

原文标题里用了“5 分钟”“全球可访”,但正文没有记录完整耗时,也没有做全球不同地区的网络测试,所以这一版不把这两个词继续当成已验证结论。

image-20250826101154874

1. 先把 Java 11 环境准备好

本次环境是 CentOS 7。

第一步先看看系统里有没有已经安装的 Java:

rpm -qa | grep java

如果没有,再查询 yum 中可用的 Java 11:

yum list | grep java-11

image-20250826103345132

原文安装命令保持不变:

yum install -y java-11-openjdk-headless-11.0.13.0.8-1.el7_9.x86_64 java-11-openjdk-11.0.13.0.8-1.el7_9.x86_64 java-11-openjdk-devel-11.0.13.0.8-1.el7_9.x86_64

安装完成后验证版本:

java –version

image-20250826104223874

到这里我会先确认 Java 本身能正常执行,再继续碰 Tomcat。

1.1 配置环境变量

编辑 /etc/profile:

vim /etc/profile

image-20250826105622123

原文在文件末尾加入下面这些内容:

xport JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-1.el7_9.x86_64
export JRE_HOME=$JAVA_HOME
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

image-20250826110824367

这里有一个源文细节需要明确保留:第一行写的是:

xport JAVA_HOME=…

而不是 export JAVA_HOME=…。

这属于原文技术内容,本次全文改写不擅自修正。

保存以后让配置生效:

source /etc/profile

再检查 Java 路径:

whereis java

image-20250826111158436

这一层确认完成以后,才开始装 Tomcat。

2. 安装 Tomcat 10

原文先从 Tomcat 官网下载 Tomcat 10 安装包,并按截图完成下载过程。

image-20250826145512750

image-20250826145707738

image-20250826145740444

image-20250826145836904

image-20250826145917792

随后回到虚拟机,切换到 root 用户,并创建独立的 Tomcat 用户。

创建用户:

useradd tomcat

设置密码:

passwd tomcat

image-20250826154329831

然后切换到 Tomcat 用户:

su – tomcat

image-20250826154402067

能正常切换过去,说明这个用户已经创建成功。

接着把:

apache-tomcat-10.1.9.tar.gz

上传到:

/home/tomcat/

image-20250826154451234

image-20250826154515289

原文确认文件上传成功。

image-20250826154532464

解压:

tar -zxvf apache-tomcat-10.1.9.tar.gz

image-20250826154644951

再把目录重命名为 tomcat:

mv apache-tomcat-10.1.9 tomcat

image-20250826154916980

然后进入目录启动服务:

cd tomcat/
bin/startup.sh

image-20250826160452317

原文确认 Tomcat 启动成功。

image-20250826160928137

如果需要关闭 Tomcat,则使用:

bin/shutdown.sh

到这里,Tomcat 本身已经安装并能启动。

但我不会急着结束,因为下一步正好能证明:这不是一个只能看的默认页面,我们确实能改它。

3. 不停在默认页:我先改一个最小的地方

原文这一节很有意思。

安装好 Tomcat 以后,作者看到默认页面“千篇一律”,就直接去改首页。

先进入 ROOT 应用目录:

cd /home/tomcat/tomcat/webapps/ROOT

image-20250826162535805

如果要修改文字和页面结构,原文指向:

index.jsp

image-20250826162834562

如果要修改样式,则看:

tomcat.css

image-20250826162914763

这次原文只做一个很小的验证:改主页文字。

打开:

vi index.jsp

然后在 Home 前面加上:

“小单的”

image-20250826163936195

改完以后回到 bin 目录重启 Tomcat。

image-20250826164053514

重启以后,页面上的文字确实发生了变化。

image-20250826164504219

这就是这篇最适合保留下来的“真实故事情景”。

不是虚构一个项目上线事故,而是一个非常具体的动作:

Tomcat 装好了,我不满足于看到默认页,于是顺手改了 index.jsp,重启以后看到自己的文字真的出现在页面上。

这种验证比一句“部署成功”更有说服力。

4. 本地能改了,问题就变成:别人怎么访问?

原文随后抛出了一个情景:

倘若同事下班以后还想使用你的 Tomcat,该怎么办?

这不是原文已经真实发生过的故事,所以这里仍然把它当作使用场景,不冒充亲身经历。

但这个场景非常自然。

因为前面我们已经确认:

  • Java 正常;
  • Tomcat 正常;
  • 页面可以修改;
  • 重启后修改生效。

现在剩下的只是访问范围。

所以 cpolar 在这篇里的职责很单一:

把本地已经能正常访问的 Tomcat 8080 页面映射到公网。

它不负责 Java,不负责 Tomcat,也不负责你的 JSP 页面。

5. 安装 cpolar

原文使用一键脚本:

sudo curl https://get.cpolar.sh | sh

image-20250826172453496

安装完成后查看服务状态:

sudo systemctl status cpolar

image-20250826172604013

cpolar 启动后,原文通过虚拟机主机 IP + 9200 进入 Web 管理界面。

源文显示文字为:

http://192.168.42.101:9200

但 Markdown 链接实际指向:

http://localhost:9200/

这两个写法不一致,本版不擅自统一,只把差异说明清楚。

image-20250826172625263

登录后即可进入 cpolar 隧道管理。

6. 先用随机公网地址验证 8080

进入【隧道管理 → 创建隧道】。

原文参数如下:

  • 隧道名称:tomcat
  • 协议:http
  • 本地地址:8080
  • 域名类型:随机域名
  • 地区:China Top

然后点击创建。

image-20250826175205560

创建成功后,打开在线隧道列表,可以看到新生成的公网地址。

image-20250826175248080

换到其他电脑或移动设备访问。

image-20250826175317499

页面能够正常打开。

这一层我会只下一个很明确的结论:

Tomcat 的 8080 页面已经可以通过公网地址访问。

先用随机地址确认链路,是我比较喜欢的做法。

因为如果这一步不通,就先查 Tomcat、8080 或隧道;不必一上来把固定域名也掺进来。

7. 长期使用,再换固定二级子域名

随机地址能用以后,如果准备长期保存这个 Tomcat 入口,再去配置固定二级子域名。

原文先进入 cpolar 的预留功能。

image-20250827103024446

地区选择:

china top

原文示例二级子域名名称是:

tomcat

image-20250827103127242

保留以后,回到 cpolar Web UI,在隧道列表中找到 tomcat,点击编辑。

然后修改为:

  • 域名类型:二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区:China Top

点击更新。

image-20250827103351334

更新以后,在线隧道列表中的随机地址会切换成固定二级子域名。

image-20250827103433119

最后再用固定公网地址访问 Tomcat。

image-20250827103556724

页面能够正常打开,说明固定入口已经配置完成。

总结

这篇真正跑通的是一条很基础、但很完整的 Java Web 服务链:

Java 11 → Tomcat 10 → 8080 → 修改首页 → 重启验证 → cpolar → 随机公网地址 → 固定二级子域名。

原文实际完成了:

  • CentOS 7 查询 Java;
  • 安装指定 OpenJDK 11 软件包;
  • java –version 验证;
  • 编辑 /etc/profile;
  • source /etc/profile;
  • whereis java;
  • 创建 tomcat 用户;
  • 上传 apache-tomcat-10.1.9.tar.gz;
  • 解压并重命名为 tomcat;
  • bin/startup.sh 启动;
  • bin/shutdown.sh 关闭;
  • 进入 /home/tomcat/tomcat/webapps/ROOT;
  • 编辑 index.jsp;
  • 给 Home 前加入“小单的”;
  • 重启以后确认首页变化;
  • 安装cpolar;
  • 9200 进入 Web 管理界面;
  • 创建 tomcat 隧道;
  • 本地地址 8080;
  • 随机公网地址访问成功;
  • 保留 tomcat 二级子域名;
  • 固定地址再次访问成功。

这篇的人物性格也比较明确:

不追求一口气把所有功能都装完,先看到最小结果,再往下一层走。

所以最有“故事感”的地方,其实不是“同事下班找我”这种假设,而是原文真的做了这件事:

装完 Tomcat,进 index.jsp 改了几个字,重启以后看到页面真的变成自己的。

这类小动作最能让技术教程像真人写的。

另外,源文里几个技术细节本版都没有擅自修正,包括 /etc/profile 中的 xport JAVA_HOME=…,以及 cpolar 9200 显示地址与 Markdown 实际链接不一致的问题。

原文最后还提到“5 分钟上线”“全球可访问”“HTTPS 加密、多隧道管理、数据库、远程桌面等扩展场景”。正文真正实测完成的是 Tomcat 页面本地运行、随机公网访问和固定地址访问,因此新版把结论收回到这个范围。

对这类入门部署来说,我觉得这样已经够了:

先让自己的页面在 8080 上出现,再让别人在外面也能打开它。

赞(0)
未经允许不得转载:171主机测评 » CentOS 7 部署 Tomcat 10:从 Java 环境、首页修改到固定公网访问
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址