Tomcat部署多個項目在雲服務器訪問

這裏講在同一個 tomcat 上部署多個項目放在服務器,通過瀏覽器訪問。
如果有 tomcat 架構不熟悉,可以瀏覽我的另一篇文章
https://blog.csdn.net/xiao_ma_csdn/article/details/79430363

進入正題

我們知道 Host 代表一個虛擬主機,每個虛擬主機和某個網絡域名相匹配
每個虛擬主機下都可以部署(deploy)一個或者多個Web App,每個Web App對應於一個Context,有一個Context path

所以要部署多個項目,只需要配置多個 service 節點,因爲一個service 可以有多個Connector來配置多個port端口,但是隻有一個Engine,一個 Engine中可以配置多個Host,但是同一 ip地址 的Host只能有一個 。所以我們通過同一ip地址不同端口來部署多個項目就需要多個service節點。

配置 server.xml

<Server port="8005" shutdown="SHUTDOWN">

  <GlobalNamingResources>

    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>
  <Service name="Catalina"> 
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

    <Engine name="Catalina" defaultHost="localhost">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

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

      </Host>
      <Host name="localhost2"  appBase="webapps/manyproject"
            unpackWARs="true" autoDeploy="true">     
      </Host>
    </Engine>
  </Service>

  <Service name="Catalina"><!-- 第二個service-->

    <Connector port="8090" protocol="HTTP/1.1"   <!-- 修改端口8090-->
               connectionTimeout="20000"
               redirectPort="8443" />

    <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/manyproject"  
            unpackWARs="true" autoDeploy="true">     
      </Host>
    </Engine>
  </Service>
</Server>

webapps/manyproject 裏面的項目需要自己粘貼過去,eclipse只會創建在webapps裏。
這裏寫圖片描述
在本地瀏覽器訪問
這裏寫圖片描述
這裏寫圖片描述

確認項目可以後上傳到雲服務器,可以用 FileZilla可視化上傳工具 。

在雲服務器管理控制檯設置安全組

這裏寫圖片描述
80端口是http默認的端口,如果設置是80,就可以直接通過 ip+項目名 訪問。

之後通過瀏覽器訪問就可以了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章