个人主页:五敷有你
系列专栏:Spring
⛺️稳中求进,晒太阳
项目在本地开发完毕之后进行一些必要参数的修改。
比如:
Maven的单体Web项目的部署比较简单。
clear掉targer后打成war包
拿到war包的地址。
rz 命令上传文件
切换到Tomcat的webapps目录,之后rz 上传文件
上传到Tomcat之后,因为我这个时候Tomcat是启动状态,所以会自动解析war包,然后生成运行文件夹。(如果没有就关闭Tomcat重启)
之后如果正常的访问的话就部署成功了。
这么简单?NO no no...
但是有一个问题,就是你原来如果图省事,将访问的路径设置为 / 那么,就有点麻烦了。
你要知道 在本地环境中设置了应用程序的上下文路径为 /
,这意味着你可以直接通过服务器的根路径来访问应用程序。但是当你将 WAR 文件上传到云服务器时,情况可能有所不同。
主要是 前端的资源路径,原来在本地的情况是你可以通过根路径直接访问,但由于传到服务器就多了一层pet路径,但是默认前端的静态资源路径是写死的
页面之所以能访问到是因为这个是请求后端进行视图跳转的。
前端的所有直接请求都差了一层/pet的资源都直接拿不到
解决方法:
将Pet改成 ROOT ,tomcat下ROOT目录会被默认访问,这样就不会再有拿不到资源的情况了。
理解简单,参数修该复制,在我努力找原因的情况下,最终还是失败了,一个启动另外一个就是停止运行,莫名其妙极了。可能有资源的竞争
前提是你本地也是一个端口,然后不同的模块用的路径名称不同
这个还是通过实测是可以的。
服务器不好观察,就在window本地看一下,一模一样。
cp -fr webapps webapps1
cp -fr Catalina Catalina1
之后进入conf/sever.xml,进行修改 复制一份service(注意看,不是sever),然后粘贴到下面
修改这几个地方
把项目放入webapps 们里面吧,结束。