同一个tomcat不同端口运行不同项目

第一步:修改 server.xml 文件

修改 tomcat 安装目录下 conf/server.xml 文件,需要几个端口就添加几个 Service 节点。

配置 2 个端口:9131 和 9133,于是增加两个 Service 节点。

每个 Service 节点的name 属性值要设置不同的值;Service 节点的子节点 Connector 的port 属性设为你要的端口号;Service 节点的子节点Engine 的 name 属性值要设置不同的值,通常和父节点 Service 的 name 属性值相同 ;Service 节点的子节点Host 的 appBase 属性的值设为部署目录的名称。

复制代码
<Service name="Catalina">
    <Connector port="9131" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               maxParameterCount="1000"
               />
    <Engine name="Catalina" defaultHost="localhost">

      <Realm className="org.apache.catalina.realm.LockOutRealm">

        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

      </Host>
    </Engine>
  </Service>

<Service name="Catalina1">
    <Connector port="9133" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               maxParameterCount="1000"
               />
    <Engine name="Catalina1" defaultHost="localhost">

      <Realm className="org.apache.catalina.realm.LockOutRealm">

        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

      <Host name="localhost"  appBase="webapps1"
            unpackWARs="true" autoDeploy="true">

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

      </Host>
    </Engine>
  </Service>

第二步:创建部署目录

根据新增的 Service 节点中的 Host 子节点的 appBase 属性值创建对应的部署目录,复制webapps,然后修改名称为webapps1

第三步:复制 Catalina 目录

复制 tomcat 安装目录下 conf/Catalina 目录一份,重命名为 Catalina1

第四步:复制 policy 和 properties 文件

conf 目录下的 catalina.properties、catalina.policy,分别复制一份。

第五步:部署项目

配置完成后就可以部署项目了。

部署方式一:

把项目分别添加到 webapps 和 webapps1目录中,然后启动服务器
部署方式二:

在 Catalina/localhost 和 Catalina1/localhost 目录下创建以项目的虚拟目录命名的 xml 文件,文件中的 Context 节点的 docBase 属性保存项目的部署包路径,然后启动服务器

第六步:测试

在浏览器的地址栏,用不同的端口号访问项目,测试是否部署成功

参考

相关推荐
【JAVA】玩家3 小时前
Spring核心原理全解析:从零到生产实战
java·后端·spring
Wang's Blog3 小时前
Java框架 SpringCloud 快速入门: 实现 Feign 最佳实践(抽取方式)
java·spring cloud
MandalaO_O4 小时前
IDEA 开发(快捷键 + 调试 + 序列化)
java·ide·intellij-idea
xiaoqiMikko5 小时前
JVM 线上排查实战(七):jps 看不见它、jstack 连不上它,可它明明活得好好的
java·jvm
狼爷6 小时前
Rust/Go/Java/Python/PHP 大比拼:负载下后端框架到底差多少?
java·后端·编程语言
念何架构之路6 小时前
zap扩展生态与总结
java·前端·数据库
第七页独白6 小时前
汽车零件厂如何通过 QMS 真正落地 IATF 16949——QMS软件系统:品质检验-内审稽核-8d客诉管理:全星质量管理软件系统
java·前端·数据库
QCoding7 小时前
Spring AI Alibaba Graph实战:从ReAct Agent到Workflow,企业AI复杂流程该如何编排?
java·人工智能
用户094248568037 小时前
第25章:Java虚拟线程(Project Loom)实战与调度协作
java·jvm
砚底藏山河7 小时前
量化实战:截面因子有效性检验(IC 分析与分层回测)
java·python·金融·maven