Nginx リバースプロキシとは何を意味しますか? Nginxリバースプロキシを設定するにはどうすればよいですか?

広く使用されているオープン ソース Web サーバー ソフトウェアである Nginx は、Web サーバーとして 2004 年 10 月に正式にリリースされましたが、リバース プロキシとしてもよく使用されます。

Nginxはどのように動作するのでしょうか?

Nginx についてさらに詳しく説明する前に、Web サーバーがどのように機能するかを理解しましょう。誰かが Web ページを開くように要求すると、ブラウザは Web サイトの Web サーバーに接続します。次に、Web サーバーはページのリクエスト ファイルを検索してブラウザに送信します。これは最も単純な種類のリクエストです。

上記の例も単一スレッドとみなされ、従来の Web サーバーはリクエストごとにスレッドを作成しますが、Nginx はこのようには動作しません。Nginx は非同期のイベント駆動型アーキテクチャを使用して実行されます。つまり、同様のスレッドが単一のワーカー プロセスの下で管理され、各ワーカー プロセスにはワーカー接続と呼ばれる小さな単位が含まれます。その後、ユニット全体が同時リクエストの処理を担当し、ワーカー接続はリクエストをワーカー プロセスに渡し、ワーカー プロセスもリクエストをマスター プロセスに送信します。最後に、メイン プロセスはこれらのリクエストの結果を提供します。

NGINX は数千のリクエストを非常に簡単に処理できるため、NGINX は最速の Web サーバーであり、電子商取引、検索エンジン、クラウド ストレージなどのトラフィックの多い Web サイトに最適です。

Nginxリバースプロキシとは何ですか?

リバース プロキシは Web サーバーの前に配置され、オリジン サーバーに到達する前にすべてのリクエストを受信します。これは、フォワード プロキシのように機能しますが、この場合、ユーザーまたはクライアントの代わりに Web サーバーがプロキシを使用する点が異なります。リバース プロキシは、Web サーバーのパフォーマンス、セキュリティ、信頼性を強化するためによく使用されます。

リバース プロキシ サーバーは、ユーザー/クライアントがフォワード プロキシを使用して匿名性を維持し、セキュリティを強化するのと同じように、オリジン サーバーのフロントエンドとして機能します。これにより、ユーザーやクライアントがオリジン サーバーと直接通信することがなくなります。

Nginx リバース プロキシの利点#

1. 負荷分散

リバース プロキシは負荷分散を実行できるため、クライアントの要求をバックエンド サーバー間で均等に分散することができます。このプロセスは、リクエストの突然の急増により特定のサーバーが過負荷になる状況を回避するのに非常に役立ちます。負荷分散により冗長性も向上します。これは、1 つのサーバーに障害が発生した場合、リバース プロキシが単にリクエストを別のサーバーに再ルーティングするためです。

2. セキュリティの向上

リバース プロキシはバックエンド サーバーの防御線としても機能します。リバース プロキシを構成すると、バックエンド サーバーの ID が不明のままになるため、DDoS などの攻撃からサーバーを保護するのに非常に役立ちます。

3. パフォーマンスの向上

Nginx は、Apache を介して静的コンテンツを提供することに優れていることが知られています。したがって、Nginx リバース プロキシを使用すると、すべてのクライアント リクエストを Nginx で処理できる一方で、動的コンテンツに対するすべてのリクエストをバックエンドの Apache サーバーに渡すことができ、アセット タイプに応じてアセット配信を最適化することでパフォーマンスの向上に役立ちます。さらに、リバース プロキシを使用してキャッシュされたコンテンツを提供し、SSL 暗号化を実行して Web サーバーの負荷を軽減することができます。

4. 簡単なロギングと監査

リバース プロキシを実装する際のアクセス ポイントは 1 つだけであるため、ロギングと監査がはるかに簡単になり、このアプローチを使用すると、リバース プロキシに出入りするものを簡単に監視できます。

Nginx リバースプロキシ構成

Ubuntu システムを例に挙げます。

1.Nginxをインストールする

root ユーザーに切り替えて、次のコマンドを実行します。

apt install Nginx

2. ファイアウォール上の Nginx を手放す

sudo ufw allow 'Nginx HTTP'

3. Nginxサーバーの構成

デフォルト設定を直接編集するのではなく、新しいサーバー ブロックを追加するためのカスタム設定ファイルを作成することをお勧めします。

vim /etc/Nginx/sites-available/wljslmz.conf

次に、次のように入力します。

server {
    
    
    listen 80;
    listen [::]:80;

    server_name wljsmz www.wljslmz.cn;
}

おすすめ

転載: blog.csdn.net/weixin_43025343/article/details/132118178