前面に書かれた今日のインターネット分野では、Nginx は最も広く使用されているプロキシ サーバーの 1 つです。多くの大企業が、ビジネス システムのプロキシ サーバーとして Nginx を使用しています。したがって、Nginx の Http、Https、WS、WSS の設定を理解する必要があります。さあ、Bingheと一緒にNginxを学び、一緒に進歩し、一緒にハゲになりましょう〜〜 Nginx 構成 HTTPまず、Nginx で HTTP を設定する方法について説明します。Nginx で HTTP を設定することは、Nginx で最もよく使用される機能の 1 つです。以下に示すように、nginx.conf で対応する情報を設定します。 アップストリームメッセージ{ サーバー localhost:8080 max_fails=3; } サーバー{ 聞く 80; server_name ローカルホスト; 位置 / { ルートhtml; インデックス index.html index.htm; #クロスドメインアクセスを許可する add_header 'Access-Control-Allow-Origin' '*'; #proxy_redirect デフォルト; #プロキシ サーバーへの接続のタイムアウト。このタイムアウトは 75 秒を超えることはできません。サーバーに障害が発生した場合、10 秒後に別のサーバーに転送されます。 プロキシ接続タイムアウト 10; } 場所 / メッセージ { proxy_pass http://メッセージ; proxy_set_header ホスト $host:$server_port; } } この時点で、http://localhost/message にアクセスすると、http://localhost:8080/message に転送されます。 Nginx 構成 Https企業がウェブサイトに対して高いセキュリティ要件を持っている場合、Nginx で Https を設定できます。具体的な設定情報は、次のとおりです。 アップストリームメッセージ{ サーバー localhost:8080 max_fails=3; } サーバー{ 443 ssl を聴く; server_name ローカルホスト; ssl_certificate /usr/local/nginx-1.17.8/conf/keys/binghe.pem; ssl_certificate_key /usr/local/nginx-1.17.8/conf/keys/binghe.key; ssl_session_timeout 20分; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers をオン; ssl_verify_client をオフ; 位置 / { ルートhtml; インデックス index.html index.htm; #クロスドメインアクセスを許可する add_header 'Access-Control-Allow-Origin' '*'; #プロキシ サーバーへの接続のタイムアウト。このタイムアウトは 75 秒を超えることはできません。サーバーに障害が発生した場合、10 秒後に別のサーバーに転送されます。 プロキシ接続タイムアウト 10; } 場所 / メッセージ { proxy_pass http://メッセージ; proxy_set_header ホスト $host:$server_port; } } このとき、https://localhost/message にアクセスすると、http://localhost:8080/message に転送されます。 Nginx 構成 WSWS の完全な名前は WebSocket です。Nginx で WebSocket を構成することも比較的簡単です。nginx.conf ファイルで対応する構成を行うだけです。この方法はシンプルですが効果的であり、WebSocket サーバーのサービス機能を水平方向に拡張できます。 友人たちの理解を深めるために、ここでは Nginx 構成 WS に焦点を当てます。 まず、以下のように設定ファイルを直接表示します(使用する場合は、コピーして IP とポートを変更するだけです)。 マップ $http_upgrade $connection_upgrade { デフォルトのアップグレード。 '' 近い; } アップストリーム wsbackend{ サーバー ip1:port1; サーバー ip2:port2; キープアライブ1000; } サーバー{ 聞く 20038; 位置 /{ プロキシ_http_バージョン 1.1; proxy_pass http://wsbackend; proxy_redirect オフ; proxy_set_header ホスト $host; proxy_set_header X-Real-IP $remote_addr; proxy_read_timeout 3600秒; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header アップグレード $http_upgrade; proxy_set_header 接続 $connection_upgrade; } } 次に、上記の構成の具体的な意味をそれぞれ分析します。 初め: マップ $http_upgrade $connection_upgrade { デフォルトのアップグレード。 '' 近い; } それは次のことを意味します:
第二に: アップストリーム wsbackend{ サーバー ip1:port1; サーバー ip2:port2; キープアライブ1000; } これは nginx の負荷分散を表します: 2 つのサーバー (ip1:port1) と (ip2:port2)。 keepalive 1000 は、各 nginx プロセスでアップストリーム サーバーによって維持されるアイドル接続を示します。アイドル接続が多すぎると、最も使用されていないアイドル接続が閉じられます。もちろん、これは接続の総数を制限するものではありません。アイドル接続プールのサイズとして考えることができます。設定値は、アップストリーム サーバーが耐えられる値である必要があります。 やっと: サーバー{ 聞く 20038; 位置 /{ プロキシ_http_バージョン 1.1; proxy_pass http://wsbackend; proxy_redirect オフ; proxy_set_header ホスト $host; proxy_set_header X-Real-IP $remote_addr; proxy_read_timeout 3600秒; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header アップグレード $http_upgrade; proxy_set_header 接続 $connection_upgrade; } } リスニングサーバーの構成を表します
この時点で、ws://localhost:20038 へのアクセスは ip1:port1 と ip2:port2 に転送されます。 Nginx 構成 WSSWSS は WebSocket + Https の略で、簡単に言えばセキュア WebSocket です。次に、WSS を構成する方法を見てみましょう。 WS を設定する際に、設定内容が詳細に説明されています。ここでは詳細には触れません。 マップ $http_upgrade $connection_upgrade { デフォルトのアップグレード。 '' 近い; } アップストリーム wsbackend{ サーバー ip1:port1; サーバー ip2:port2; キープアライブ1000; } サーバ{ 20038 ssl を聴く; server_name ローカルホスト; ssl_certificate /usr/local/nginx-1.17.8/conf/keys/binghe.com.pem; ssl_certificate_key /usr/local/nginx-1.17.8/conf/keys/binghe.com.key; ssl_session_timeout 20分; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers をオン; ssl_verify_client をオフ; 位置 /{ プロキシ_http_バージョン 1.1; proxy_pass http://wsbackend; proxy_redirect オフ; proxy_set_header ホスト $host; proxy_set_header X-Real-IP $remote_addr; proxy_read_timeout 3600秒; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header アップグレード $http_upgrade; proxy_set_header 接続 $connection_upgrade; } } この時点で、wss://localhost:20038 へのアクセスは ip1:port1 と ip2:port2 に転送されます。 Nginx で Http、Https、WS、WSS を設定する方法についてはこれで終わりです。Nginx で Http、Https、WS、WSS を設定する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: JavaScript での && および || 演算子の使用例
Flash での HTML と CSS の適用:同僚の Den が Flash で HTML と C...
webpack をパッケージ化する前に、次の作業が完了していることを確認する必要があります。 1) ...
最近、ポップアップ広告に取り組んでいました。デフォルト ページには z-index が設定されていな...
スワップ メモリとは、主に物理メモリが不足している場合に、システムがハード ディスク領域の一部をサー...
目次序文プロジェクト設計後部フロントエンドプロジェクトを実行する質疑応答序文これまでの API 開発...
オンライン MySQL トランザクションの問題の記録先週の金曜日、大きなテーブルを削除する操作を実行...
目次基本タイプあらゆるタイプ配列タプルインタフェース関数自己推論を入力する結合タイプ(1つ以上選択)...
目次0x01 ドライバーモジュールのロードに失敗しました0x02 ソリューション要約する0x01 ド...
目次序文1. 準備 - サーバーとnginxの使用1. サーバーを準備する2. nginxをインスト...
目次1. 父から息子へ2. 息子から父へ3. 親子関係のないコンポーネントの値の転送4. ヴュークス...
CS: ... 1. <link type="text/css" href...
この記事では、VMware 12でのUbuntu 16.04のインストールチュートリアルを参考までに...
今日は、ネイティブ JS で実装されたブリージング カルーセルを紹介します。効果は次のとおりです。 ...
この記事では、参考までにタイマーを実装するためのVueの具体的なコードを紹介します。具体的な内容は次...
本日、開発中に、顧客からページをキャッシュしないように要求される方法に遭遇しました。調べたところ、ペ...