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

保姆级tomcat的页面部署(静态)

准备工作

一、tomcat

1.下载tomcat的压缩包,我选择的是目前最新版本11.0.9

也可以选择其他版本,但一定要使用对应的jdk版本

Apache Tomcat® - Apache Tomcat 11 Software Downloads

2.把下载好的tomcat压缩包拖到虚拟机的/opt目录

解压缩改名并删除包

# 1. 解压Tomcat压缩包
tar -xzvf apache-tomcat-11.0.9.tar.gz

# 2. 将解压后的目录重命名为tomcat11
mv apache-tomcat-11.0.9 tomcat11

# 3. 删除原始压缩包
rm -f apache-tomcat-11.0.9.tar.gz

# 4. 验证操作结果
ls -l

二、jdk

1.下载jdk版本,我选择17.0.15

Java Downloads | Oracle Europe

2.把下载好的压缩包上传虚拟机/opt目录

# 进入 /opt 目录
cd /opt

# 解压 JDK 压缩包
tar -xzvf jdk-17.0.15_linux-x64_bin.tar.gz

# 重命名解压后的 JDK 目录(可选,便于管理)
mv jdk-17.0.15 jdk17

# 删除原始压缩包(可选)
rm -rf jdk-17.0.15_linux-x64_bin.tar.gz

3.配置环境变量 

# 编辑全局环境变量文件
vi /etc/profile

# 在文件末尾添加以下内容
export JAVA_HOME=/opt/jdk17
export PATH=$JAVA_HOME/bin:$PATH
export CATALINA_HOME=/opt/tomcat11  # 设置 Tomcat 家目录

# 保存退出后加载配置
source /etc/profile

# 验证 JDK 安装
java -version

 正式部署

1.创建用于静态页面

# 创建自定义应用目录
mkdir -p /opt/tomcat11/webapps/myapp# 创建静态页面

vi index.html<html>
<head><meta charset="UTF-8"><title>My Static Page</title>
</head>
<body><h1>Success! Tomcat 11 + JDK 17</h1><p>当前时间: <span id="datetime"></span></p><script>document.getElementById('datetime').textContent = new Date().toLocaleString();</script>
</body>
</html>
EOF

2.启动tomcat

# 赋予执行权限
chmod +x /opt/tomcat11/bin/*.sh# 启动 Tomcat
/opt/tomcat11/bin/startup.sh# 验证进程
ps -ef | grep tomcat

3.测试访问静态页面

  • 本地访问

    curl http://localhost:8080/myapp/index.html

  • 外部访问
    浏览器访问:

    http://<服务器IP>:8080/myapp/index.html

http://10.1.1.160:8080/myapp/index.html

  • 应显示包含动态时间的欢迎页面。

若外部访问不了,需要检查防火墙,网络,绑定地址,日志

检查日志的命令:

tail -f /opt/tomcat11/logs/catalina.out

 检查 Tomcat 绑定地址

默认情况下,Tomcat 只绑定到 127.0.0.1(本地回环),需修改为 0.0.0.0

# 编辑 Tomcat 配置文件
vi /opt/tomcat11/conf/server.xml

找到 <Connector port="8080"> 行,确保有以下属性:

xml

<Connector port="8080" protocol="HTTP/1.1"address="0.0.0.0"  <!-- 关键修改:允许所有IP访问 -->connectionTimeout="20000"redirectPort="8443" />

保存后重启 Tomcat:

bash

/opt/tomcat11/bin/shutdown.sh
/opt/tomcat11/bin/startup.sh

4.上传静态图片进行测试

#进入webapps目录创建图片存放的文件夹imgdemo,把图片放进该文件夹

cd /opt/tomcat11/webapps/

mkdir imgdemo
cd imgdemo/

在浏览器中输入访问的目录,看到以下图片即成功 

http://10.1.1.160:8080/imgdemo/tiankong.png

5.上传静态项目进行测试(可自行去找项目进行部署)

 

http://www.dtcms.com/a/269910.html

相关文章:

  • 【世纪龙科技】汽车零部件检验虚拟实训室-数字赋能职业教育
  • PHP诞生30周年
  • 文件传输安全保障:探索Hash校验的不同方法
  • 使用阿里云/腾讯云安装完成mysql使用不了
  • JavaScript中的Request详解:掌握Fetch API与XMLHttpRequest
  • 单稳态触发器Multisim电路仿真——硬件工程师笔记
  • imx6ull-裸机学习实验11——高精度延时实验
  • 铝板矫平机:精密平整的关键设备
  • AI 在生活中的应用:深度解析与技术洞察
  • [2025CVPR]SGC-Net:开放词汇人机交互检测的分层粒度比较网络解析
  • Java教程:【程序调试技巧】入门
  • Leetcode 3604. Minimum Time to Reach Destination in Directed Graph
  • Windows安装docker+Dify本地部署
  • IB智慧公交系统的设计与实现
  • Python之--列表
  • 【AI大模型】PyTorch Autograd 实战
  • 测量认知革命:Deepoc大模型如何重构示波器的存在形态
  • Cursor配置DeepSeek调用MCP服务实现任务自动化
  • Flutter编译安卓应用时遇到的compileDebugJavaWithJavac和compileDebugKotlin版本不匹配的问题
  • GC4344:高性能音频 DAC 芯片解析
  • 【ASP.NET Core】深入理解Controller的工作机制
  • Android T startingwindow使用总结
  • 【AI智能体】智能音视频-硬件设备基于 WebSocket 实现语音交互
  • ReactNative【实战系列教程】我的小红书 4 -- 首页(含顶栏tab切换,横向滚动频道,频道编辑弹窗,瀑布流布局列表等)
  • 深入解读MCP:构建低延迟、高吞吐量通信中间件
  • Terraform `for_each` 精讲:优雅地自动化多域名证书验证
  • ELK日志分析
  • Spring Boot 项目中的多数据源配置
  • Go语言网络游戏服务器模块化编程
  • C++——从C到C++