web-dev-qa-db-ja.com

ApacheからTomcatにリダイレクトするにはどうすればよいですか?

私は最初のJavaサイトで作業しています。ポート8080でApache Tomcatを実行し、ポート80でApache HTTPDを実行しています。サイトにアクセスできる現在のURLは(たとえば)123.4.5.6:8080。ドメインを新しいIPに向ける前に、URLのポート番号をremoveにしたい。

現時点では、phpmyadminにApacheのみを使用していますが、CGIスクリプトやその他のものに使用できるようになったら、mod_jk etc ...ですから、Tomcatのポートを80に変更してApacheをオフにしたくありません。

これが理にかなっていることを願っています。

36
Alan

正しい方法は、Apacheを80、Tomcatを8080のままにして、プラグイン(できればmod_proxy)を使用してApacheからTomcatをプロキシすることです。 mod_proxyのセットアップには10分しかかかりません。

この how-to は非常に簡単です。

41
kgiannakakis

既に述べたように、これを行う通常の方法は、Apache HTTPDのmod_jkを使用して、Tomcatで処理するコンテンツを転送することです。

Tomcat.Apache.orgには Quick HowTo があります。以下を行う必要があります。

  • mod_jk.soをApache HTTPDの適切なモジュールディレクトリにコピーします。
  • 構成ファイルを作成しますworkers.properties
  • Apache HTTPDのhttpd.confで、mod_jkを構成するセクションを追加します。
  • 通常はポート8009にあるmod_jkプロトコルを受け入れるようにTomcatが構成されていることを確認します。

httpd.confの行とJkMount

JkMount  /examples/* worker1

tomcatに転送するリクエストをApache HTTPDに伝えます。

17
Eddie

上記の有益な答えはどちらも良いですが、mod_proxyよりもmod_jkの方が好きです。 mod_jkとは異なり、mod_proxyに追加のインストールを行う必要はなく、セットアップははるかに簡単です。 mod_jkを使用すると、Tomcatパラメーターの詳細なチューニングをより細かく制御できますが、ApacheからTomcatへの単純なリダイレクトが必要な場合は、mod_proxyが最適です。

2
gareth_bowles

TomcatではなくApacheで静的コンテンツを提供する場合は、mod_jkを使用する必要があります。 http://Tomcat.Apache.org/Tomcat-6.0-doc/proxy-howto.html

また、SSLについてはどうでしょうか。ApacheがHTTPSを処理するようにしたいのであれば、Java/Tomcatよりも高速です。

1
bodrin

このリンクを使用してTomcatを構成する必要があります。 Tomcat 7の場合 http://Tomcat.Apache.org/Tomcat-7.0-doc/proxy-howto.html

0
Haid