同一个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 属性保存项目的部署包路径,然后启动服务器

第六步:测试

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

参考

相关推荐
2401_8949155339 分钟前
GEO 优化源码全解析:从搜索引擎到 AI 引擎的底层改写逻辑
java·服务器·前端·数据库·人工智能·分布式·搜索引擎
Java牛马5 小时前
SpringBoot Starter 依赖相关总结
java·spring·springboot·starter·自动装配·依赖
吴声子夜歌5 小时前
Java面试——Spring Cloud原理及应用(二)
java·spring cloud·面试
东小西5 小时前
【SAA实战】第 1 篇:ReactAgent 入门——先撸个"会调工具的助手"跑起来
java·人工智能·spring
mqiqe6 小时前
AgentScope Java 2.0 协议集成全景解析:A2A、AG-UI、Agent Protocol 三大开放协议实战指南
java·开发语言·ui
脉动数据行情6 小时前
Java 实现台股 TWSE/TPEx 行情采集(个股 + K 线)
java·开发语言·twse·tpex·台股
月华路8 小时前
G1 GC 对数组与大对象(Humongous)的处理
java·jvm·算法
liangshanbo12159 小时前
虚拟列表深度面试题整理
java·开发语言·前端
gugucoding9 小时前
59. 【Java】Spring Boot 入门:第一个 Web 应用
java·开发语言·spring boot
10mAh10 小时前
【Java】HashMap 的 put 到底做了什么?——冲突、扩容与树化实测
java·开发语言·hash