tomcat的web项目的远程热发布

时间:2023-03-10 01:31:55
tomcat的web项目的远程热发布

已经发布的项目war包更改了怎么办?我常用的做法是:

.把war包上传服务器
.远程登录服务器后台
.停止tomcat服务
.用新的war包替换老的war包
.启动tomcat服务

后来才知道原来tomcat自带了远程发布的配置管理功能。

默认tomcat是关闭这个这个远程发布的用户入口的,我们该如何实现远程发布呢?

此文档假设tomcat的安装路径是usr/local/tomcat。

一、关于manager登录名和密码的配置

编辑usr/local/tomcat/conf/tomcat-users.xml,增加如下两行:

<role rolename="manager-gui"/>
<user username="admin" password="" roles="manager-gui"/>

重启tomcat服务,登录localhost:8080/manager
成功登录的话就能看到所有Applications项目的运行状态了。

二、发布一个新war项目

. 找到Deploy功能区域的【WAR file to deploy】子配置项
. 点击【选择文件】按钮上传需要发布的war文件
. 点击【Deploy】按钮

就这么简单!

一切顺利的话,能在Applications中发现刚才发布的项目名称且发现Running状态为“true”。

三、war项目更新

. 首先在Applications中找到正在运行的项目
. 点击Stop按钮,Applications的Running状态变成false
. 点击Undeploy按钮,你会发现Applications列表中没有改项目了(被卸载)
. 然后重复”步骤二“发布一个新war项目的流程

这样就可以实现远程升级部署了!

四、一个我遇到的错误响应

显示信息为远端拒绝了我的连接

五、最后查明原因是war的大小超过了上传文件的限制
编辑/usr/locat/tomcat/webapps/manager/WEB-INF/web.xml,找到如下配置部分:

     <multipart-config>
<!-- 50MB max -->
<max-file-size></max-file-size>
<max-request-size></max-request-size>
<file-size-threshold></file-size-threshold>
</multipart-config>

能看到默认支持最大50MB的文件。修改成满足你的项目应用的限制大小吧。