SpringBoot项目使用war包部署至云服务器(Linux+Tomcat)

SpringBoot项目使用war包部署至云服务器(Linux+Tomcat),第1张

一、项目打包:

1.更改项目的启动方式

使用web.xml运行应用程序,指向Application,最后启动springboot(继承SpringBootServletInitialier,重写函数)

public class WarStartApplication extends SpringBootServletInitializer {

   @Override

           protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

                  return builder.sources(Application.class)

           }

    }

2.更改.properties配置信息

修改相关的地址和配置信息

PS: 可采用STS自带的动态配置系统(多配置文件)进行开发环境和生产环境的隔离。

3.更改api接口层配置文件(pom.xml)

1)进行war包配置

<packaging>war</packaging>

2)war包打包所需依赖项

<dependency>

      <groupId>javax.servlet</groupId>

      <artifactId>javax.servlet-api</artifactId>

      <scope>provided</scope>

</dependency>

4.执行打包操作

1)maven clean清除之前的打包

2)maven install进行打包操作

二、将war包文件上传至服务器

1.在api层的target文件夹下找到新生成的项目war包

2.使用rzsz工具上传war包(rz)

三、使用Tomcat进行项目开放

1.进行 Tomcat的环境部署

2.将war包拷贝到tomcat的webapps文件夹下

3.cd至bin文件夹下(tomcat会自动解压项目war包并进行项目部署)

使用startup.sh进行tomcat启动

使用shutdown.sh进行tomcat关闭

具体步骤如下:

第一步:

先将项目打包成war文件,也就是将在项目上单击鼠标右键,选择Export:

选择WAR file,点击下一步:

会出现如下所示,选择你要保存的位置,点击完成:

在你所选择的地方会有个如下所示的war文件:

以上步骤只是完成了将项目打包成war文件的步骤,现在来说将war包部署到服务器的步骤:

第二步:

先将war包用类似于ftp的工具(我自己用的是ftp,这种工具很多的)上传到固定位置

第三步:

一般是先停止tomcat,Linux命令:shutdow.sh,将war放到tomcat的webapps目录下,我自己用到的命令(我用ftp将war包放到了data下的version目录下):

mv /data/version/tecDoc.war /var/tomcat/tomcat6/webapps/tecDoc.war

第四步:

然后启动tomcat,Linux命令:./startup.sh,第六步也可以不用操作了,我一般都是所有的配置都改好才打包

第五步:

再次停止tomcat,删除war文件(注:如果tomcat不停止 ,删除war包时,文件夹也会被tomcat一起自动删除,之所以删除war,是怕tomcat再次自动解压,覆盖掉修改的配置,不确定会不会再次解压,以防万一)

第六步:

修改自动解压的文件夹里配置(如果打包前没有修改配置文件,比如jdbc.properties文件(一般开发时用的是本地数据库,上生成时要改成生产数据库),就要用linux命令修改一下,如果打包前修改好了,就不用修改了)

第七步:

然后再启动tomcat

在开发web应用时,如果通过weblogic的控制台部署war包,则weblogic默认在运行期不会解压war,这对于调试jsp颇为不便。其实,只需一个简单的设置就可以强迫weblogic解开war,并且编辑jsp后weblogic会重新加载,方便调试。将StagingMode由nostage改为stage,重启weblogic即可。解压后的目录在myserver目录下。

需要注意的是,一旦war包需要重新部署,除了更新war包外,还要删除bea/user_projects/domains//myserver目录下的.wlnotdelete和stage目录,以便强迫weblogic重新解开最新的war包,否则将继续使用原来已解压的目录。WebLogic 是美国 Oracle 公司出品的一个 Application server,确切的说是一个基于 JAVA EE 架构的中间件,WebLogic 是用于开发、集成、部署和管理大型分布式 Web应用、网络应用和数据库应用的 Java应用服务器。将 Java 的动态功能和 Java Enterprise 标准的安全性引入大型网络应用的开发、集成、部署和管理之中。

本环境模拟了一个真实的 Weblogic 环境,其后台存在一个弱口令,并且前台存在任意文件读取漏洞。漏洞复现的过程分别通过利用这两种漏洞获得 Weblogic 管理后台登录的账号,最终通过 Weblogic 后台应用部署功能上传War包(JSP 大马)获得 WebShell。War 包 是用来进行 Web 开发时一个网站项目下的所有代码,包括前台HTML/CSS/JS 代码,以及后台 JavaWeb 的代码。当开发人员开发完毕时,就会将源码打包给测试人员测试,测试完后若要发布则也会打包成 War 包进行发布。Weblogic 部署 Web 应用的过程可参见:WebLogic部署Web应用并绑定域名。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/597745.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-10
下一篇2023-07-10

发表评论

登录后才能评论

评论列表(0条)

    保存