X(Twitter) Zenn GitHub RSS 共有

Tomcat

作成日時:2024-08-25
更新日時:2024-08-25

リンク

複数サービスの指定

server.xmlに下記の定義を記載する。

<!-- 同一ポートの場合 -->
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
    <!-- 既存の設定 -->

    <!-- Springアプリケーション用のContext -->
    <Context path="/" docBase="/root/spring_application" />

    <!-- SPA用のContext -->
    <Context path="/spa" docBase="/root/spa" />
</Host>

<!-- 別ポートの場合 -->
<Server port="8005" shutdown="SHUTDOWN">
  <!-- その他の設定 -->
  
  <Service name="Catalina">
    <!-- SPA用のConnectorとEngine (8080ポート) -->
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <Engine name="Catalina" defaultHost="localhost">
      <Host name="localhost" appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Context path="/" docBase="/root/spa" />
      </Host>
    </Engine>
  </Service>

  <!-- Springアプリケーション用のService (8082ポート) -->
  <Service name="SpringApp">
    <Connector port="8082" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <Engine name="SpringApp" defaultHost="localhost">
      <Host name="localhost" appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Context path="/" docBase="/root/spring_application" />
      </Host>
    </Engine>
  </Service>
</Server>

ルートディレクトリ

少し特殊で、webapps/ROOTに配置。

webapps
├─ROOT
└─other