一個 tomcat 下如何部署多個項目?附詳細步驟


一個tomcat下如何部署多個項目?Linux跟windows系統下的步驟都差不多,以下linux系統下部署為例。windows系統下部署同理。

 

一、不修改端口,部署多個項目

清楚tomcat目錄結構的應該都知道,項目包是放在webapps目錄下的,那能否在同一個tomcat的webapps目錄下運行多個不同項目呢?答案是可以的。

1、將多個項目包放入webapps文件夾下

 

2、修改conf下的server.xml文件,新增web應用節點

定位到server.xml文件結束標簽之前,新增web應用節點,一個節點代表一個項目

   <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t "%r" %s %b" />

        <!-- 配置web應用 --> 
        <Context docBase="erp" path="/erp" reloadble="true" />
        <Context docBase="ningmengban" path="/ningmengban" reloadble="true" />
      </Host>
    </Engine>
  </Service>
</Server> 

以上新增內容說明:
docBase屬性: 指定Web應用的文件路徑,可以是絕對路徑,也可以給定相對路徑
path屬性: 指定訪問該Web應用的URL入口
reloadable屬性: 若這個屬性為true,tomcat服務器在運行狀態下會監視WEB-INF/classes和WEB-INF/lib目錄下class文件的改動,如果監測到class文件被更新,服務器會自動重新加載Web應用。

注意:每個項目本身的一些配置文件修改,例如數據庫連接信息配置,請自行配置好,這里不做贅述。

另外,以上第2步server.xml中新增節點不是必須的,可以直接進入第3步,也ok。

 

 

3、重啟tomcat,瀏覽器輸入訪問項目地址

注意:以開發提供的項目部署文檔說明中地址為准,去進行訪問測試;

瀏覽器訪問第一個項目地址ip:8080/ningmengban/app/register/regiseter.html,成功

瀏覽器訪問第二個項目地址ip:8080/erp/regist,成功

 

二、修改端口,部署多個項目

我們已經清楚一個webapps下面可多個項目。另外一種思路則是,可否多個webapps,每個webapps下面運行一個項目?答案也是可以的。

1、tomcat目下復制webapps目錄,並重命名為webapps1

Tomcat下webapps已經部署了一個項目,復制webapps重命名為webapps1,並在該文件夾下刪除第一個項目,放第二個項目

 

2、修改tomcat的conf目下的server.xml文件,設置端口等信息

1)server.xml已有第一個項目的配置信息,現在需要新增第二個項目的配置,在Server節點下,新增Service節點;第2個Service節點復制第1個Service內容

2)復制后,做如下端口等配置修改

<!-- 第二個項目配置 -->
<Service name="Catalina1">

  <!-- 8080為http訪問端口,為避免沖突,修改端口 -->
  <Connector port="8081" protocol="HTTP/1.1"
             connectionTimeout="20000"
             redirectPort="8443" />

  <!-- 8009為AJP端口,Apache能通過AJP協議訪問Tomcat的8009端口,避免沖突,修改 -->
  <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

  <!-- Engine節點,name修改為Catalina1 -->
  <Engine name="Catalina1" defaultHost="localhost">

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

    <!-- 修改Host節點,appBase修改為webapps1 -->
    <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的name屬性修改為Catelina1
http協議訪問的Connector port屬性修改為8081
AJP協議訪問的Connector port屬性修改為8010
Engine的name屬性修改為Catelina1
Host的appBase屬性修改為webapps1

3、重啟tomcat,瀏覽器輸入訪問項目地址

瀏覽器訪問第一個項目地址ip:8080/ningmengban/app/register/regiseter.html,成功

瀏覽器訪問第二個項目地址ip:8081/erp/regist,成功

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM