ホームページ > 運用・保守 > Nginx > WebSocket をサポートするように Nginx を構成する方法

WebSocket をサポートするように Nginx を構成する方法

王林
リリース: 2023-05-17 21:28:13
転載
5525 人が閲覧しました

1. wss および nginx プロキシ wss についての理解:

1. wss プロトコルは実際には websocket SSL であり、https (http SSL) と同様に、websocket プロトコルに SSL レイヤーを追加することを意味します。

2. nginx を使用して wss をプロキシする [通信原理とプロセス]

  • クライアントは wss 接続を開始して nginx

  • に接続します

    Nginx は WSS プロトコル データを Workerman の WebSocket プロトコル ポートに転送し、それを WS プロトコル データに変換します

  • Workerman はデータを受信した後にビジネス ロジック処理を実行します

  • #Workerman がクライアントにメッセージを送信する場合は、その逆のプロセスで、データは nginx/ を介して wss プロトコルに変換され、クライアントに送信されます

2. Nginx WebSocket 構成をサポート

server {
      listen   80;
      server_name 域名;
      location / {
        proxy_pass   http://127.0.0.1:8080/; // 代理转发地址
     proxy_http_version 1.1;
        proxy_read_timeout   3600s; // 超时设置
        // 启用支持websocket连接
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
      }
      location /upload { // 静态资源地址
            root   /mnt/resources;        
      }
}
ログイン後にコピー

重要なのは、WebSocket 接続が確立されると、http 接続を WebSocket 接続に変えるために接続アップグレードが実行されることを示すこれら 2 行です。

proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
ログイン後にコピー
proxy_read_timeout; 接続が成功した後にサーバーの応答を待つ時間を示します。構成されていない場合、デフォルトは 60 秒です。

proxy_http_version 1.1; http バージョンが 1.1 であることを示します

以上がWebSocket をサポートするように Nginx を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート