Nginx プロキシ マネージャーを使用して Websockets プロキシを実装する方法
Websockets は、双方向通信を必要とするアプリケーションに適したリアルタイム通信プロトコルです。 Nginx Proxy Manager (略して NPM) は、複数のリバース プロキシ リソースの管理と構成に使用できる Nginx ベースのプロキシ サーバーです。この記事では、NPM を使用して Websocket プロキシを実装する方法を紹介し、具体的なコード例を示します。
まず、NPM をインストールする必要があります。 Ubuntu システムでは、次のコマンドを使用してインストールできます。
sudo apt-get update sudo apt-get install npm
NPM をインストールした後、いくつかの構成を実行する必要があります。まず、NPM インストール ディレクトリ (通常は /usr/share/nginx/html
) に移動し、config.json
という名前のファイルを作成してプロキシ サーバーを構成します。
config.json
ファイルでは、複数のプロキシ サーバーを構成できます。この例では、受信したすべての Websocket リクエストを指定されたターゲット サーバーにプロキシするように、websocket
という名前のプロキシ サーバーを構成します。
以下は設定の例です:
{ "proxies": { "websocket": { "name": "Websockets Proxy", "ssl": false, "host": "ws://localhost:8000", "port": 80, "path": "/websocket", "proxyType": "websocket" } } }
上記の設定では、プロキシ サーバーの名前、SSL を使用するかどうか、ターゲット サーバーのホストとポート、 URL パスとプロキシ タイプ。
構成が完了したら、NPM を開始できます。ターミナルで NPM インストール ディレクトリを入力し、次のコマンドを実行します。
sudo npm start
この時点で、NPM はデフォルトのポート 80 でリッスンし、要求のプロキシを開始します。
NPM の構成と起動が完了したので、Websockets プロキシが適切に動作しているかどうかをテストしてみましょう。
まず、Node.js を使用して構築できる簡単な Websocket サーバーを準備します。サンプル コードは次のとおりです。
const WebSocket = require('ws'); const wss = new WebSocket.Server({ port: 8000 }); wss.on('connection', ws => { ws.on('message', message => { console.log(`Received message: ${message}`); ws.send(`Echo: ${message}`); }); ws.send('Connected to server.'); });
ターミナルで上記のコードを実行して、Websocket サーバーを起動します。
次に、ブラウザで NPM 管理インターフェイス (通常は http://localhost
) にアクセスします。インターフェイスで、Add Proxy Host
ボタンをクリックし、次の情報を入力します。
[保存
] ボタンをクリックして保存します。構成。
これで、Websocket をサポートする任意のクライアントを使用して ws://localhost/websocket
に接続し、メッセージを送信し、サーバーからの応答を受信できるようになります。
NPM プロキシ サーバーを介して、Websocket のプロキシ機能を実装することに成功しました。
概要
この記事では、Nginx Proxy Managerを使用してWebsocketのプロキシ機能を実装する方法を紹介します。 NPM を構成し、特定のコード例を使用することで、Websocket リクエストをプロキシできるプロキシ サーバーを正常に構築できました。この記事が NPM と Websockets プロキシの理解と使用に役立つことを願っています。
以上がNginx プロキシ マネージャーを使用して Websocket プロキシを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。