Rumah > Artikel > Operasi dan penyelenggaraan > Bagaimana untuk melaksanakan proksi Websockets menggunakan Pengurus Proksi Nginx
Cara menggunakan Pengurus Proksi Nginx untuk melaksanakan proksi Websockets
Websockets ialah protokol komunikasi masa nyata yang sesuai untuk aplikasi yang memerlukan dua hala komunikasi. Pengurus Proksi Nginx (pendek kata NPM) ialah pelayan proksi berasaskan Nginx yang boleh digunakan untuk mengurus dan mengkonfigurasi berbilang sumber proksi terbalik. Artikel ini akan memperkenalkan cara menggunakan NPM untuk melaksanakan proksi Websockets dan memberikan contoh kod khusus.
Pertama, kita perlu memasang NPM. Pada sistem Ubuntu, anda boleh memasangnya dengan arahan berikut:
sudo apt-get update sudo apt-get install npm
Selepas memasang NPM, kita perlu melakukan beberapa konfigurasi . Mula-mula, masukkan direktori pemasangan NPM, biasanya /usr/share/nginx/html
, dan kemudian buat fail bernama config.json
untuk mengkonfigurasi pelayan proksi. /usr/share/nginx/html
,然后创建一个名为 config.json
的文件,用来配置代理服务器。
在 config.json
文件中,我们可以配置多个代理服务器。在这个例子中,我们配置一个名为 websocket
的代理服务器,将所有接收到的Websockets请求代理到指定的目标服务器。
下面是一个配置的例子:
{ "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代理是否正常工作。
首先,准备一个简单的Websockets服务器,可以使用Node.js进行搭建。下面是一个示例代码:
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.'); });
在终端中运行上述代码,启动Websockets服务器。
接下来,在浏览器中访问NPM的管理界面,通常是 http://localhost
。在界面上,点击 Add Proxy Host
按钮,填写如下信息:
点击 Save
按钮保存配置。
现在,我们可以使用任意支持Websockets的客户端连接到 ws://localhost/websocket
config.json
, kami boleh mengkonfigurasi berbilang pelayan proksi. Dalam contoh ini, kami mengkonfigurasi pelayan proksi bernama websocket
untuk memproksi semua permintaan Websockets yang diterima ke pelayan sasaran yang ditentukan. Berikut ialah contoh konfigurasi: rrreee
Dalam konfigurasi di atas, kami menyatakan nama pelayan proksi, sama ada untuk menggunakan SSL, hos dan port pelayan sasaran, laluan URL dan jenis Ejen.http://localhost
. Pada antara muka, klik butang ws://localhost/websocket
, menghantar mesej dan menerima respons daripada pelayan. #🎜🎜##🎜🎜#Melalui pelayan proksi NPM, kami berjaya melaksanakan fungsi proksi Websockets. #🎜🎜##🎜🎜#Ringkasan#🎜🎜##🎜🎜#Artikel ini memperkenalkan cara menggunakan Pengurus Proksi Nginx untuk melaksanakan fungsi proksi Websockets. Dengan mengkonfigurasi NPM dan menggunakan contoh kod khusus, kami berjaya membina pelayan proksi yang boleh memproksi permintaan Websockets. Saya harap artikel ini akan membantu anda memahami dan menggunakan proksi NPM dan Websockets. #🎜🎜#Atas ialah kandungan terperinci Bagaimana untuk melaksanakan proksi Websockets menggunakan Pengurus Proksi Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!