【Spring】Tomcat服务器部署

       📝个人主页:五敷有你      
 🔥系列专栏:Spring

⛺️稳中求进,晒太阳

单体项目部署

本地工作

项目在本地开发完毕之后进行一些必要参数的修改。

比如:

  • 数据库的JDBC的配置文件,还有前端页面的localhost,
  • 需要注明的是,后端的localhost在服务器的运行时,是会被解析成主机IP地址的,但前端的页面不会所以要将前端页面的地址也进行修改,还有后端的图片要上传的服务器的地址也需要修改一下。

Maven的单体Web项目的部署比较简单。

clear掉targer后打成war包

拿到war包的地址。

服务器工作

rz 命令上传文件

切换到Tomcat的webapps目录,之后rz 上传文件

上传到Tomcat之后,因为我这个时候Tomcat是启动状态,所以会自动解析war包,然后生成运行文件夹。(如果没有就关闭Tomcat重启)

之后如果正常的访问的话就部署成功了。

这么简单?NO no no...

但是有一个问题,就是你原来如果图省事,将访问的路径设置为 / 那么,就有点麻烦了。

        你要知道   在本地环境中设置了应用程序的上下文路径为 /,这意味着你可以直接通过服务器的根路径来访问应用程序。但是当你将 WAR 文件上传到云服务器时,情况可能有所不同。

        主要是 前端的资源路径,原来在本地的情况是你可以通过根路径直接访问,但由于传到服务器就多了一层pet路径,但是默认前端的静态资源路径是写死的

        页面之所以能访问到是因为这个是请求后端进行视图跳转的。

        前端的所有直接请求都差了一层/pet的资源都直接拿不到

解决方法:

将Pet改成 ROOT ,tomcat下ROOT目录会被默认访问,这样就不会再有拿不到资源的情况了。

聚合项目的部署

直接复制两个tomcat         

理解简单,参数修该复制,在我努力找原因的情况下,最终还是失败了,一个启动另外一个就是停止运行,莫名其妙极了。可能有资源的竞争

在一个webapp里直接上传

前提是你本地也是一个端口,然后不同的模块用的路径名称不同

在一个tomcat里面配置多个webapp

这个还是通过实测是可以的。

服务器不好观察,就在window本地看一下,一模一样。

先复制webapps的目录文件

cp -fr webapps webapps1

再复制Catalina命名为Catalina

cp -fr Catalina  Catalina1

 

 之后进入conf/sever.xml,进行修改 复制一份service(注意看,不是sever),然后粘贴到下面 

修改这几个地方

  •  <Service name="Catalina1">
  • <Connector port="80" protocol="HTTP/1.1"
  •   <Engine name="Catalina1" defaultHost="localhost">
  •  <Host name="localhost"  appBase="webapps1"

把项目放入webapps 们里面吧,结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/458756.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot集成Swagger2的增强版Knife4j

1. 背景 作为SpringBoot集成中间件其中的一篇文章吧&#xff0c;既然打算出这么一个系列了&#xff0c;争取做到虽小却全&#xff0c;又精又美的一个系列吧。 Swagger应该都有接触吧&#xff0c;knife4j是Swagger2的增强版&#xff0c;更加友好的操作页面&#xff0c;更多强大…

Vagrant 虚拟机工具基本操作指南

Vagrant 虚拟机工具基本操作指南 ​#虚拟机 #​ ​#vargant#​ ​#ubuntu#​ ‍ 虚拟机virtualbox ,VMWare及WSL等大家都很了解了&#xff0c;那Vagrant是什么东西&#xff1f; 它是一组命令行工具&#xff0c;可以象Docker管理容器一样管理虚拟机&#xff0c;这样快速创…

使用阿里云一键部署 幻兽帕鲁服务器 菜鸟教程 一键快速部署

本文通过介绍如何 从购买阿里云服务器&#xff08;windows系统&#xff09;、到一键傻瓜式快速部署、再到连接到帕鲁服务器&#xff0c;简介明了&#xff0c;易上手&#xff0c;没相关专业知识的游戏玩家也能一键傻瓜式搭建服务器环境。 背景&#xff1a;最近很火爆的游戏《幻…

C程序训练:二分查找法的应用之2

本文来自&#xff1a;C程序训练&#xff1a;二分查找法的应用之2 在《C程序训练&#xff1a;二分查找法的应用》一文中介绍了利用二分查找计算某个区间中数的个数&#xff0c;本文介绍利用二分查找法计算数列中出现单个数字的位置。题目描述如下。 题目描述&#xff1a;一维整…

初识C语言·预处理详解

目录 1 预定义符号 2 define定义常量 3 #define定义宏 4 带有副作用的宏 5 宏替换的规则 6 宏和函数的对比 7 # 和 ## i) #运算符 ii) ##运算符 8 命名约定 9 命令行定义 10 条件编译 条件编译1&#xff1a; 条件编译2&#xff1a; 条件编译3&#xff1a; 条件…

嵌入式学习Day14 C语言 --- 位运算

位运算 注意&#xff1a;符号位也遵循这个规则 一、按位与(&) 运算规则&#xff1a;一假则假 int a 0x33;a & 0x55;0011 00110101 0101 &----------0001 0001 //0x11 二、按位或(|) 运算规则&#xff1a;一真则真 int a 0x33;a |0x55;0011 00110101 0101 |…

JVM系列——垃圾收集器Parrlel Scavenge、CMS、G1常用参数和使用场景

背景 当前在Java领域&#xff0c;JDK 8版本仍然享有广泛的使用&#xff0c;它支持了Parallel Scavenge、CMS和G1这几种垃圾收集器。因此&#xff0c;为了在业务应用中更加高效地进行开发和性能调优&#xff0c;我们需要对这些垃圾收集器的工作原理和特性有一个全面的理解和认识…

零基础学Python之面向对象

1.面向对象编程简介 &#xff08;1&#xff09;什么是面向对象 面向对象程序设计(Object Oriented Programming)作为一种新方法&#xff0c;其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事…

Windows Server 2019 DHCP服务器搭建

系列文章目录 目录 系列文章目录 文章目录 前言 一、DHCP服务器是什么&#xff1f; 二、配置服务器 1.实验环境搭建 1)实验服务器配置和客户端 2)实验环境 2.服务器配置 ​编辑 文章目录 Windows Server 2003 Web服务器搭建Windows Server 2003 FTP服务器搭建Windows S…

基于Java农产品商城系统设计与实现(源码+部署文档)

博主介绍&#xff1a; ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ &#x1f345; 文末获取源码联系 &#x1f345; &#x1f447;&#x1f3fb; 精彩专栏 推荐订阅 &#x1f447;&#x1f3fb; 不然下次找不到 Java项目精品实…

Dataway工具(一个接口竟然可以如此简单的配置出来无需开发任何一行代码,也不需要做任何 Mapping 实体映射绑定。)

基于 DataQL 服务聚合能力&#xff0c;为应用提供的一个接口配置工具&#xff0c;使得使用者无需开发任何代码就配置一个满足需求的接口。整个接口配置、测试、冒烟、发布&#xff0c;一站式都通过 Dataway 提供的 UI 界面完成。UI 会以 Jar 包方式提供并集成到应用中并和应用共…

生产问题-Java服务CPU飙升100%问题

情况回顾 最近运维同学反馈有微服务CPU飙升100%&#xff0c;根据dump的日志文件排查出问题所在&#xff0c;在这里给大家做简单的分享&#xff0c;希望给大家工作上可以带来帮助。 核心伪代码分析 SneakyThrows//包装成 RuntimeException &#xff0c;骗过编译器&#xff0c…