プロキシ サーバー (Apache httpd) を使用している場合、Tomcat は構成がどのように見えるかを気にしません。必要に応じて、同じホスト名 (またはホスト名) ですべての Web アプリケーションを提供できます。その場合、複数の VirtualHosts に対して httpd を構成してから、必要な URL スペースを Tomcat にマップします。
www.0signals.com
ただし、(たとえば) 1 つを使用可能にし、別の 1 つを使用可能にする(両方ではない) ように webapps を分離したい場合は、Tomcat で次のようにuploads.0signals.com
複数作成する必要があります。<Host>
server.xml
<Host name="localhost" appbase="webapps">
...
</Host>
<Host name="uploads.0signals.com" appbase="uploads">
...
</Host>
デフォルトである必要があり、定義されている他のホストのいずれにも一致しないものを取得する必要があるため、<Host>
特に指定せずにデフォルトの「localhost」をそこに残しました。www.0signals.com
<Host>
値は、基本的に既存のディレクトリがあった場所の親ディレクトリであるappbase
Tomcat の相対値です。の完全な資格を取得したい場合は、それを歓迎します。CATALINA_BASE
webapps
appbase
ROOT
ディレクトリ (またはROOT.war
ファイル) をwebapps
およびuploads
ディレクトリにそれぞれ配置したら、準備完了です。SSL を構成する場合を除き、両方のホスト名に同じ IP アドレスを使用しても問題はありません。その場合、SSL 証明書が 1 つのドメインのみに一致すると問題が発生する可能性があります。それを回避する方法はありますが、それらはあなたの質問のトピックから外れています。
更新ああ、もう 1 つ: この場合、Apache httpd を使用する特別な理由はありません。eatj
前もって httpd を使用する必要があります上記の構成は、途中に httpd がなくても問題なく機能します。すべてのトラフィックを Tomcat にプロキシするつもりなら、Apache httpd をインストールする理由はまったくありません。
更新 2012-06-29いくつかのこと:
あなたの DNS はあなたの問題ではありません (少なくとも今はそうではありません):
$ ホスト www.0signals.com www.0signals.com はアドレス 69.46.75.150 を持っています $ ホスト uploads.0signals.com uploads.0signals.com はアドレス 69.46.75.150 を持っています
とのそれぞれに接続するwww.0signals.com
とuploads.0signals.com
、2 つの異なるサーバーから応答が返されます。一方は (Tomcat) のヘッダーでwww.0signals.com
応答し、もう一方は(Apache httpd) で応答します。すべてのリクエストを処理するために Apache httpd を使用している場合、 for に一部(mod_jk を使用している場合) または/ (mod_proxy_* を使用している場合) がありません。mod_jk も mod_proxy_* もディレクティブを 1 つの VirtualHost から別の VirtualHost にコピーしないことに注意してください。手動で行う必要があります。Server
Apache -Coyote/1.1
Apache/2.0.63
JkMount
ProxyPass
ProxyPassReverse
VirtualHost
uploads.0signals.com