IPアドレスとホスト名がTomcatサーバーからexample.comにのみ公開されるようにするにはどうすればよいですか?

IPアドレスとホスト名がTomcatサーバーからexample.comにのみ公開されるようにするにはどうすればよいですか?

Tomcat7の上にCentOS 6を実行しているWebサーバーがあります。すべてがうまく機能しますが、ユーザーはさまざまな方法でサーバーにアクセスできます。

たとえば、

  • IPアドレス
  • example.com
  • www.example.com

このアドレスはブラウザからアクセスできます。ただし、www.example.comIPアドレスまたはアクセス時に「example.com」を指すようにサーバーを設定したいと思います。


IP アドレスの例、xxx.xx.xx.xx ► example.com
www.example.com ► example.com

これを達成する最も簡単な方法は何ですか?サーバーにDNSを構成する必要がありますか?

ベストアンサー1

これを防ぐためにできることは実際にはありません。最善の方法は、さまざまなURLまたはIPアドレスにアクセスするときにそれに応じてアクセスされたURLをリダイレクトまたは再作成してdomain.comにするために、Tomcatに一連の書き換え規則を配置することです。

フロントエンドWebサーバー

多くの場合、人々はこれを助けるためにTomcatまたはJettyサーバーを展開し、その前にWebサーバーを配置します。私が働いているところでは、Nginxを使ってこれを行います。デフォルトでは、Tomcatサーバーをその背後にあるスレーブサーバーにプロキシしています。このように展開すると、Tomcatサーバーを「保護」して、必要な方法でのみアクセスできます。なぜなら、エンドユーザーは前のWebサーバーに公開されているURLにのみアクセスできるからです。

この展開モデルの詳細については、ここで確認できます。

Nginxは単なるWebブラウザであり、Apacheや他のものを簡単に使用してフロントエンドレイヤーを提供できます。

Tomcatのみを使用して書き直されました

別の方法は、このようなモジュールを使用することです。URL書き換えフィルタ、Tomcat内でURLを書き換えることができます。このアプローチは、以下を使用するのと似ています。Apache mod_rewrite着信URLを削除してリダイレクトするモジュールです。

UrlRewriteFilterのルールを生成する方法についての素晴らしいチュートリアルがあります。タキURLRewriteの使い方

おすすめ記事