以前のブログでは、Tomcatのサーバーの各コンポーネントの使用について学びました。 Tomcatは他の抗生成サーバーを使用して、HTTPSへのアクセスをプロキシサーバーから実装する必要がありますブラウザによってサポートされていないプロトコル。 一般的なアンチプロキシ サーバーには、haproxy、nginx、httpd などがあります。これらの 3 つのソフトウェアのうち、haproxy と nginx は http プロトコルに基づいて tomcat をプロキシできます。httpd は http プロトコルに基づいて tomcat をプロキシでき、tomcat をプロキシするための ajp プロトコルもサポートしています。tomcat をプロキシするために ajp プロトコルを使用する場合は、httpd で proxy_ajp_module を有効にする必要があります。 1. nginx は tomcat をリバースします http プロトコルに基づいて tomcat をプロキシする nginx の構成は、基本的に他の Web サーバーの構成と同じです。場所を定義し、対応する URL をバックエンド tomcat サーバーに proxy_pass します。 例: nginx は tomcat の www.test1.com と localhost ホストを逆にします ヒント: 上記の構成は、アクセス パスがルートに一致する場合、要求が 192.168.0.22:8080 にプロキシされることを意味します。実際、要求が Tomcat に到達した後、対応するホストが存在するかどうかが確認されます。存在する場合は、一致したホストから応答し、そうでない場合は、デフォルトのホストから応答します。明らかに、192.168.0.22 は Tomcat のホストに一致できないため、デフォルトのホスト localhost から応答します。これは、/ へのアクセス要求を仮想ホスト localhost にリバース プロキシすることと同じです。.jsp または .do の末尾に一致するリソースの場合、2 番目の場所を使用して、仮想ホスト www.test1.com への要求がリバース プロキシされます。 検証: 192.168.0.22 にアクセスして、Tomcat の localhost 仮想ホストによって提供されるページにアクセスできるかどうかを確認します。 ヒント: 192.168.0.22 にアクセスすると、ブラウザは Tomcat の localhost によって提供されるホームページを返すことがわかります。 検証: 192..168.0.22/index.jsp にアクセスして、tomcat 上の www.test1.com によって提供されるホームページにアクセスできるかどうかを確認します。 ヒント: 192.168.0.22/index.jsp にアクセスすると、ブラウザーが Tomcat の仮想ホスト www.test1.com によって提供されるホームページに応答することがわかります。 2. httpdはtomcatをリバースする 例: httpd は http プロトコルを使用して tomcat を置き換えます ヒント:上記の構成は、www.test1.comにアクセスすると、リクエストがhttp://127.0.0.1:8080に逆転することを意味します。 ES HTTPD、およびホストヘッダーはwww.test1.comであり、HTTPDはメッセージをカプセル化します。 0.0.1したがって、クライアントがwww.teste1.comにアクセスすると、デフォルトの仮想ホストから戻ります。 検証: ブラウザを使用して www.test1.com にアクセスし、Tomcat の localhost ページに応答するかどうかを確認します。 ヒント: www.test1.com にアクセスすると、応答は Tomcat の www.test1.com 仮想ホストによって提供されるページではなく、localhost 仮想ホストによって提供されるページであることがわかります。これは、proxypreservehost がオフになっているためです。つまり、クライアントのホスト ヘッダーが Tomcat に渡されません。 proxypreservehost をオフからオンに変更し、httpd を再起動してから、www.test1.com にアクセスして、localhost 仮想ホストのページがまだ返されるかどうかを確認します。 ヒント: 上記の proxypreservehost on の変更は、クライアント ホスト ヘッダーの値をバックエンドの Tomcat に渡すことを意味します。これにより、Tomcat はクライアントから渡されたホスト ヘッダーに応じて、異なる仮想ホスト上のページに応答できます。 検証: httpd サービスを再起動し、www.test1.com にアクセスして、Tomcat の www.test1.com 仮想ホストのページに応答があるかどうかを確認します。 ヒント: ここで www.test1.com にアクセスすると、localhost 仮想ホストのページではなく、www.test1.com 仮想ホストのページに応答することがわかります。これは、httpd がクライアント ホスト ヘッダーの値をバックエンドの tomcat に渡すことを意味します。 テスト: 192.168.0.22 にアクセスして、デフォルトの localhost 仮想ホスト ページにアクセスできるかどうかを確認します。 ヒント: 192.168.0.22 にアクセスすると、応答として Tomcat の localhost 仮想ホスト ページが返されます。これは、httpd がクライアント ホスト ヘッダーの値 192.168.0.22 をバックエンドの Tomcat に渡した後、Tomcat で仮想ホスト 192.168.0.22 が見つからないため、Tomcat がデフォルトの仮想ホスト localhost で httpd に応答し、次にブラウザーに応答するためです。つまり、表示されるのは Tomcat の localhost 仮想ホストのページです。 3. httpdはtomcatの代わりにajpプロトコルを使用する 上記の例では、http プロトコルを使用して Tomcat を表す httpd と、ajp プロトコルを使用して Tomcat を表す httpd の間に本質的な違いはありません。唯一の違いは、http プロトコルを ajp プロトコルに変更し、バックエンドの Tomcat ポート 8080 をポート 8009 に変更することです。残りは同じです。 ヒント: ここで注意すべき点は、httpd が tomcat をプロキシするために ajp プロトコルを使用するということです。 proxy_ajp_module モジュールを使用する必要があります。そうしないと、httpd は ajp プロトコルをサポートしません。 検証: ブラウザでそれぞれ www.test1.com と 192.168.0.22 にアクセスし、Tomcat 内の対応する仮想ホストのページにアクセスできるかどうかを確認します。 ヒント: ajp プロトコルに基づく anti-Tomcat と http に基づく anti-Tomcat を使用した場合のアクセスには違いがないことがわかります。 Nginx/Httpd 逆生成 tomcat 構成チュートリアルに関するこの記事はこれで終わりです。より関連性の高い Nginx/Httpd 逆生成 tomcat 構成コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Reactホームページの読み込みが遅い問題のパフォーマンス最適化事例の詳細な説明
>>: Vue プロジェクトでよく使用されるツール機能の概要
1 インストールMYSQL 公式サイトから対応する解凍バージョンをダウンロードし、必要なディレクトリ...
3. MySQLデータ管理最初の方法:お勧めできません。複雑そうです -- 学生テーブルの grad...
1. readonly 読み取り専用属性なので、値を取得できます2. 無効: 無効な属性、値を取得で...
序文これまで当社ではMySQLの5.7シリーズを使用していましたが、バージョン8.0のリリースに合わ...
1. まず、コンピュータのデスクトップにある VMware アイコンをダブルクリックしてソフトウェア...
最近Bステーションでスマートアンチブロッキング弾幕と呼ばれる弾幕エフェクトを見ました。これは伝説のマ...
この記事では、MySQL 5.7.25圧縮版のインストールと設定方法を参考までに紹介します。具体的な...
Dockerは複数のSpringbootを実行する1番目: ポートマッピング 2番目: メモリサイズ...
なぜ権限管理が必要なのでしょうか? 1. コンピュータ リソースは限られているため、コンピュータ リ...
1: django-admin.py startproject プロジェクト名2: cd プロジェク...
filterは通常、特定の値をフィルターするために使用されます。たとえば、フィールドが空だが、フロン...
1. はじめになぜインデックスが必要なのでしょうか?一般的なアプリケーション システムでは、読み取り...
さっそく、コードを直接投稿します。具体的なコードは次のとおりです。 <!DOCTYPE htm...
この記事では、例を使用して、MySQL ストアド プロシージャにおけるカーソル (DECLARE) ...
目次1. HTML構造を作成する2. テーブルを作成する3. ヘビの頭と体を作る4. 食べ物を作る5...