2016-05-04 21 views
0

Tomcatの単一インスタンス上の異なるポートに複数のアプリケーションをホストしたい。 私は/etc/tomcat/server.xmlファイルで以下の変更を行い、次の行を追加しました。私は両方の方法を提供してきたのappBaseに複数のポート上で複数のアプリケーションが動作しない - Tomcat

How to run different apps on single Tomcat instance behind different ports?

Server.xmlを

<Service name="app1"> 
    <Connector port="8082" protocol="HTTP/1.1" 
      connectionTimeout="20000" 
      URIEncoding="UTF-8" 
      redirectPort="8443" /> 
    <Engine name="Catalina1" defaultHost="localhost"> 
     <Host name="localhost" appBase="app1" 
     unpackWARs="true" autoDeploy="true"> 
     </Host> 
    </Engine> 
</Service> 

<Service name="app2"> 
    <Connector port="8083" protocol="HTTP/1.1" 
      connectionTimeout="20000" 
      URIEncoding="UTF-8" 
      redirectPort="8443" /> 
    <Engine name="Catalina2" defaultHost="localhost"> 
     <Host name="localhost" appBase="app2" 
     unpackWARs="true" autoDeploy="true"> 
     </Host> 
    </Engine> 
</Service> 

。 1.直接フォルダ名。 2.パス:webapps/temp。

問題は私が8082と8083のポートをヒットしたときに、デフォルトのページを取得できないということです。 と私は私のURLに電話をかけることができません。

例:IP:8082/TEMP/XYZ/ABC /のparam1 =ハロー& PARAM2 =世界
IP:8083/TEMP/XYZ/ABC /のparam1 =ハロー& PARAM2 =世界

私が見るときネットワークで404エラーが発生しています。

しかし、ポート8081(server.xmlのデフォルト設定)を使用して同じURLを呼び出すと、正しく応答が得られます。

私はここで間違っています。

また、可能であれば、私がこのように進んで、単一のTomcatインスタンスで複数のアプリケーションをホストする場合は、欠点や問題を教えてください。

ありがとうございました

+0

あなたはそれを稼働させましたか?私は同じ問題を抱えています – habitats

答えて

0

現在の設定には複数の問題があります。私は注意深くリンクした他の質問を読むことをお勧めします。 具体的に:

  • サービス名は一意でなければなりません
  • エンジン名は一意でなければなりません
  • のappBase値が
  • のappBase値は個人的に

を重複してはならない一意である必要があり、私ではありませんこのようにしてください。私は単一のサービス/エンジンの下ですべてを実行し、virtual hostingを使用します。サービスごとにDNS名を設定する必要がありますが、仮想ホスティングでは、サービスにアクセスするために使用するURLにポート番号を含める必要がありません。

+0

私は私の質問を編集し、あなたが示唆した点に従って変更を加えました。しかし、私はまだ応答を得ることができません。 仮想ホスティングを共有していただきありがとうございます。このようなことをやっているのは初めてです。 –

関連する問題