zoukankan      html  css  js  c++  java
  • 在 Tomcat 8 部署多端口项目

    转载自:https://www.cnblogs.com/ramantic/p/7517544.html

    一般的部署途径

    Tomcat 的部署途径很多,一般有如下几种:

    1. 直接将 War 包拷贝到 webapps 目录中,然后启动 Tomcat。
    2. 登陆 Tomcat 管理控制台http://localhost:8080/,输入用户名和密码后便可管理应用并动态发布。

    接下来记录一下多端口项目部署的步骤。

    多端口项目的部署策略

    要想在 Tomcat 上部署不同端口的项目,其实只需要修改 conf 文件夹的 server.xml 即可。在 Server 元素下可以看到 Service 子元素,其中 Connector 的 Port 是默认的 8080。接下来只要创建多个 Service 子元素就行了,修改其中的 port 就可以。

    先来看看 8080 端口的 Service 是如何配置的:

    <Service name="Catalina">
      <Connector port="8080" protocol="HTTP/1.1"
                 connectionTimeout="20000"
                 redirectPort="8443" />
      <!-- Define an AJP 1.3 Connector on port 8009 -->
      <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
      <Engine name="Catalina" defaultHost="localhost">
    
        <!-- Use the LockOutRealm to prevent attempts to guess user passwords
             via a brute-force attack -->
        <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>

    接下来要配置新的端口了,那么要修改哪些地方呢?来列举一下:

    1. Service 标签 的 name 属性
    2. Connector 的 port 属性,也就是端口号
    3. Engine 的 name 属性
    4. Host 的 appBase 属性

    OK,继续在 8080 这个 Service 的后面,也就是与之为兄弟节点关系的位置注入以下配置代码:

    <Service name="Catalina_QueenWeb">
      <Connector port="8500" protocol="HTTP/1.1"
                 connectionTimeout="20000"
                 redirectPort="8443" />
    
      <!-- Define an AJP 1.3 Connector on port 8009 -->
      <!-- <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->
    
      <Engine name="Catalina_QueenWeb" defaultHost="localhost">
    
        <!-- Use the LockOutRealm to prevent attempts to guess user passwords
             via a brute-force attack -->
        <Realm className="org.apache.catalina.realm.LockOutRealm">
          <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
        </Realm>
        <Host name="localhost"  appBase="webapp_QueenWeb" 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>

    修改了哪些内容呢?

    1. Service 标签 的 name 属性值为 Catalina_QueenWeb
    2. Connector 的 port 属性值为 8500(该端口号可以自由拟定)
    3. Engine 的 name 属性值为 Catalina_QueenWeb
    4. Host 的 appBase 属性值为 webapp_QueenWeb

    来看一下 Tomcat 内部的文件夹:

    Markdown

    可以看到,除了默认的 webapps 文件夹,还有一个新创建的 webapp_QueenWeb,只要把打包好的 War 包直接拷贝进去即可:

    Markdown

    最后,启动 Tomcat 服务(startup.bat)即可,同时会发现,这个 War 包会自解压为一个文件夹!

  • 相关阅读:
    [整理]ADB命令行学习笔记
    3、HTML的body内标签1
    2、HTML的head内标签
    1、HTML的本质以及在web中的作用
    3.11-3.15 HDFS HA
    3.9-3.10 分布式协作服务框架Zookeeper
    3.6-3.8 分布式环境启动、测试
    3.1-3.5 分布式部署hadoop2.x的准备和配置
    2.28 MapReduce在实际应用中常见的优化
    2.27 MapReduce Shuffle过程如何在Job中进行设置
  • 原文地址:https://www.cnblogs.com/hd92/p/13554986.html
Copyright © 2011-2022 走看看