2009-03-19 3 views
3
私は現在、Tomcatサーブレット1は、ROOTの下で実行している

:私はmod_proxyをを使用して簡単にしていリダイレクトURLパスは使用してTomcatのサーブレットに転送するためのApache/mod_proxyを

api1.myhost.com:8080/

api1.myhost.comからのすべてのリクエストをこのインスタンスに転送します。これは今日のように働いています。

私は今、Tomcatの(同じIPアドレス)の同じインスタンスの下で実行されます第二のサーブレット2インストールされている:私は新しいへのすべての要求をしたい

www.myhost.com:8080/servlet2

をURL API2は、第2サーブレットに行くよう: .myhost.com

は今二サーブレットインスタンスに転送されます

API2。

api2.myhost.comが自分のサーバーIPを指し示すようにAレコードを作成しました。 api2.myhost.comをwww.myhost.com:8080/servlet2に転送するにはどうすればよいですか?

答えて

3

VirtualHostを2つ作成する必要があります。最初のwebappを指し、もう1つを2番目のWebappに合わせる必要があります。

<VirtualHost *:80> 
    ServerName api1.myhost.com 
    ProxyPass/http://api1.myhost.com:8080/ 
    ProxyPassReverse/http://api1.myhost.com:8080/ 
</VirtualHost> 

<VirtualHost *:80> 
     ServerName api2.myhost.com 
     ProxyPass/http://www.myhost.com:8080/servlet2 
     ProxyPassReverse/http://www.myhost.com:8080/servlet2 
</VirtualHost> 

パスはTomcatではApacheと異なりますので、アプリケーションで相対URLを使用する必要があります。

+0

素晴らしい1つの小さな修正でうまくいきました。私は次の行も持っていなければなりません: NameVirtualHost *:80 – Ish

+0

これらの仮想ホストレコードをどのファイルに追加しますか? – frosty

+0

メインのApacheのconfファイルに含まれているファイル。仮想ホストごとに個別のファイルが存在することがよくあります。 –

関連する問題