Nginx リバース プロキシはポート 80 のリクエストを 8080 に転送します

Nginx リバース プロキシはポート 80 のリクエストを 8080 に転送します

まず、一連の概念を理解しましょう。nginx リバース プロキシとは何でしょうか?

リバース プロキシとは、プロキシ サーバー (ここでは nginx) を使用して、ネットワーク上の要求、つまり URL (デフォルトはポート 80) を受信することを意味します。

1. Nginx は、ポート番号 (nginx のデフォルト値は 80) など、セカンダリ ドメイン名である可能性のある URL (転送ルールは nginx 構成ファイルで構成) についていくつかの判断を行います。

たとえば、test1.baidu.com と test2.baidu.com は 2 つの第 2 レベル ドメイン名です。ここでの第 1 レベル ドメイン名は baidu.com です。DNS はこれら 2 つのドメイン名を同じ IP に解決します (第 2 レベル ドメイン名解決を追加する必要があります (Alibaba Cloud はドメイン名解決に解決を追加する必要があります。異なるドメイン名を同じ IP を持つサーバーに解決することも、個別に異なる IP に解決することもできます))。

2. nginx をリバース プロキシとして構成すると、異なるセカンダリ ドメイン名の要求を、対応するサービスを提供できる異なるポートまたは IP とポートに転送できるようになります。

つまり、ブラウザにtest1.baidu.comと入力するのです

test2.baidu.com と入力して Enter キーを押します。実際のアクセス ポート (または IP、nginx の転送ルールの構成によって異なります) は異なり、取得されるサービスも異なります (これは、異なるドメイン名またはリクエスト パスに従って、異なる IP とポートにリクエストを転送する nginx 構成ファイル内のプロジェクトです)。

オンラインでスクリーンショットを撮ってみましょう:クライアント:これはクライアントブラウザで、モバイルブラウザまたはPCブラウザになります

あの青い雲はインターネットです

リバースプロキシサーバー: nginx で構成されたサーバー

Web サーバー、ファイル サーバー --- サービスを提供する Tomcat またはその他のコンテナー (Web プロジェクトがデプロイされているもの)。これらのサーバーは通常、同じ LAN 内にあります。

簡単に言えば、外部ネットワークは同じポート (80) にアクセスし、それが nginx を通じて異なるサービスを提供する内部ネットワーク上の異なるポートに転送されます。

これは、ポート 80 のみを開く必要があり、ポート 8080 を閉じることができることを意味しますか?

Alibaba Cloud に行ってテストしてみました:

8080をシャットダウンした後、

nginxのdefault.confファイルを変更する

wqが変更を保存したら、nginxを起動します: service nginx restart

それでおしまい。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Nginx リバース プロキシでセッション永続性を実装する 2 つの方法の詳細な説明
  • nginxリバースプロキシのマルチポートマッピングの実装
  • Nginx リバース プロキシを使用して go-fastdfs を実行する例
  • Nginxリバースプロキシ設定でプレフィックスが削除される
  • Nginx リバースプロキシの例の詳細な説明

<<:  RHEL7.5 mysql 8.0.11 インストールチュートリアル

>>:  mysql 8.0.12 winx64 のダウンロードとインストールのチュートリアル

推薦する

知っておくべき 7 つのネイティブ JS エラーの種類

目次概要1. 範囲エラー2. 参照エラー3. 構文エラー4. タイプエラー5. URIエラー6. 評...

Day.js をベースにした JavaScript での日付処理のよりエレガントな方法

目次day.js を使用する理由モーメントデイ.js day.js がなければどうなるでしょうか? ...

Vue カプセル化に基づくプルダウン更新およびプルアップ読み込みコンポーネント

VueとネイティブJavaScriptカプセル化に基づいて、プルダウンリフレッシュとプルアップロード...

Spring Boot Docker パッケージング ツールの概要

目次スプリングブートDocker spring-boot-maven-プラグインSpotify Ma...

nginx の default_server 定義とマッチングルールの詳細な説明

nginx の default_server ディレクティブは、server_name と一致しない...

js QRコードスキャンログインの原理についての簡単な説明

目次QRコードログインの真髄QRコードを理解するシステム認証メカニズムQRコードをスキャンしてログイ...

MySQL マスタースレーブレプリケーションスレッドの状態遷移に関する詳細な理解

序文MySQL マスター スレーブ レプリケーションの基本原理は、スレーブ データベースがマスター ...

hr 水平線スタイルの例コード

コードをコピーコードは次のとおりです。 <hr style="width:490px...

MySQL メモリテーブルと一時テーブルの使用方法の詳細な説明

MySQL メモリ テーブルと一時テーブルの使用メモリテーブル: セッション 1 $ mysql -...

JavaScript カラービューア

この記事では、カラービューアを実装するためのJavaScriptの具体的なコードを参考までに紹介しま...

JavaScript 定期検証パスワード強度実装方法

展示する デザインパスワード強度分析パスワードは数字、文字、特殊記号で構成されていますパスワード: ...

60件のページング事例と優れた実践例を推奨

<br />構造と階層により複雑さが軽減され、読みやすさが向上します。記事やサイトが整理...

Docker で SVN サーバーを構築するチュートリアル

SVN は Subversion の略称で、ブランチ管理システムを使用して効率的に管理するオープンソ...

Dockerイメージをパッケージ化し、リモートサーバーにプッシュしてk8sにデプロイする方法

目次1. Dockerファイル2. pom 構成3. イメージプッシュ4. k8s デプロイメント前...

MySQL 5.7 インストール MySQL サービスを開始できませんが、サービスはエラーを報告しません

MySQL 5.7 をインストールするには 2 つの方法があります。1 つはインストーラをダウンロー...