質問 Nginx リバース プロキシの後、Tomcat アプリケーションは、クライアント ブラウザーのアドレス バーにある実際のドメイン名ではなく、 たとえば、あるサーバーでは、Tomcat のポート番号は 8080、Nginx のポート番号は 80、Nginx リバース プロキシのポート番号は 8080 です。 サーバー{ 聞く 80; 位置 / { プロキシパス http://127.0.0.1:8080; } } 別のマシンで、ブラウザを使用して System.out.println(リクエストのgetHeader("ホスト")); 消す:
問題の原因 Nginx のリバース プロキシは、実際にはクライアントと実際のアプリケーション サーバー間のブリッジです。クライアント (通常はブラウザー) が Nginx サーバーにアクセスし、その後 Nginx が Web アプリケーション サーバーにアクセスします。 Web アプリケーションの場合、この HTTP リクエストのクライアントは実際のクライアント ブラウザではなく Nginx です。特別な処理を行わない場合、Web アプリケーションは Nginx をリクエスト クライアントと見なし、取得されるクライアント情報は Nginx に関する情報になります。 問題解決 Nginx は HTTP ヘッダーを構成します。ホストにはクライアントの実際のドメイン名とポート番号が含まれます proxy_set_header ホスト $http_host; Tomcat は、Nginx から渡された HTTP ヘッダーからクライアント情報を取得します。 <Valve クラス名="org.apache.catalina.valves.RemoteIpValve" /> 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。 以下もご興味があるかもしれません:
|
最近、VMware 仮想マシンで CentOS を試していたのですが、インストール後にインターネット...
0. リモート開発が必要な理由組み込み Linux を開発する場合、便宜上、通常は Windows ...
効果画像: 実装コード: <テンプレート> <div id="map&q...
1. Python 3をインストールする1. 依存パッケージをインストールしますyum instal...
背景SQL クエリを実行するときに、where 条件の vachar 型フィールドの単一引用符を削除...
docker コマンドを初めて使用する場合、権限の問題を確認するメッセージが表示されます。 unix...
ポテトチップスパーティーのこのエピソードに参加して、何人かの友人に会えてとても嬉しいです。思いがけず...
コードをコピーコードは次のとおりです。 <スタイル タイプ="text/css&qu...
1. Oracle は大規模データベースですが、MySQL は小規模から中規模のデータベースです。O...
<br />jb51.net では、常に記事のセマンティクスを重視してきましたが、HTM...
0x0 はじめにまず、ハッシュアルゴリズムとは何でしょうか?メッセージやセッション項目など、一部のデ...
ドロップダウン メニューも実生活では非常に一般的です。実装に使用される js コードは、タブ選択やア...
序文この記事では、uniapp グローバル変数の実装方法をいくつかまとめています。詳細な知識は、uV...
MySQL インデックスの確立は、MySQL の効率的な操作にとって非常に重要です。インデックスによ...
クラウドサーバーを使用するとデータベースに接続できる場合もありますが、Navicat Premium...