


Bagaimana untuk menggunakan pelayan proksi Nginx untuk melaksanakan sokongan protokol WebSocket?
Bagaimana untuk menggunakan pelayan proksi Nginx untuk melaksanakan sokongan protokol WebSocket?
WebSocket ialah protokol komunikasi dupleks penuh berdasarkan TCP Ia membolehkan pelayan dan pelanggan menjalankan komunikasi dua hala dalam masa nyata dengan mewujudkan saluran komunikasi di mana kedua-dua pihak boleh mengekalkan sambungan jangka panjang komunikasi masa nyata, sembang segera, Senario seperti tolak data masa nyata. Apabila menggunakan WebSocket, kita selalunya perlu mengkonfigurasi pelayan proksi untuk memajukan permintaan dan respons WebSocket. Artikel ini akan memperkenalkan cara menggunakan pelayan proksi Nginx untuk melaksanakan sokongan untuk protokol WebSocket.
Langkah 1: Pasang Nginx
Pertama, kita perlu memastikan Nginx dipasang pada pelayan proksi. Jika ia tidak dipasang, sila pilih kaedah pemasangan yang sesuai mengikut sistem pengendalian.
Langkah 2: Ubah suai fail konfigurasi Nginx
Seterusnya, kita perlu mengubah suai fail konfigurasi Nginx. Buka fail konfigurasi Nginx dan tambah kod berikut dalam blok http
: http
块中添加以下代码:
map $http_upgrade $connection_upgrade { default upgrade; '' close; } upstream backend { server 127.0.0.1:8080; }
上述代码中,map
指令用于将请求头中的Upgrade
字段的值映射为$connection_upgrade
变量的值。upstream
指令用于定义后端服务器的地址,这里使用的是本地地址127.0.0.1:8080
,你可以根据实际情况进行修改。
在server
块中添加以下代码:
location /websocket { proxy_pass http://backend; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; }
上述代码中,location
指令用于匹配WebSocket请求的路径。proxy_pass
指令用于将请求转发给后端服务器。proxy_http_version
指令用于指定代理协议的版本。proxy_set_header
指令用于设置请求头,将Upgrade
和Connection
sudo service nginx restart
map
digunakan untuk menukar Upgrade< / dalam pengepala permintaan Nilai kod> medan dipetakan kepada nilai pembolehubah <code>$connection_upgrade
. Arahan upstream
digunakan untuk mentakrifkan alamat pelayan bahagian belakang Alamat tempatan 127.0.0.1:8080
digunakan di sini. Tambah kod berikut dalam blok server
: var ws = new WebSocket("ws://your_domain/websocket"); ws.onopen = function() { console.log("Connected to WebSocket"); }; ws.onmessage = function(event) { console.log("Received message: " + event.data); }; ws.onclose = function() { console.log("Disconnected from WebSocket"); };
location
digunakan untuk memadankan laluan permintaan WebSocket. Arahan proxy_pass
digunakan untuk memajukan permintaan ke pelayan hujung belakang. Arahan proxy_http_version
digunakan untuk menentukan versi protokol proksi. Arahan proxy_set_header
digunakan untuk menetapkan pengepala permintaan dan memajukan medan Naik taraf
dan Sambungan
ke pelayan hujung belakang sebagaimana adanya. Langkah 3: Mulakan semula perkhidmatan NginxSelepas melengkapkan pengubahsuaian fail konfigurasi, simpan dan tutup fail. Kemudian, mulakan semula perkhidmatan Nginx untuk konfigurasi berkuat kuasa. Masukkan arahan berikut dalam baris arahan: rrreee
Langkah 4: Uji sambungan WebSocketPada ketika ini, kami telah melengkapkan konfigurasi Nginx. Seterusnya, kita boleh menggunakan alat klien WebSocket atau menulis aplikasi web mudah untuk menguji sambungan WebSocket. Berikut ialah contoh kod mudah: 🎜rrreee🎜 Simpan kod di atas sebagai fail HTML dan buka fail dalam penyemak imbas anda. Jika anda melihat output "Disambungkan ke WebSocket" dalam alat pembangun penyemak imbas, ini bermakna sambungan WebSocket berjaya. 🎜🎜Ringkasan: Melalui langkah di atas, kami berjaya menggunakan pelayan proksi Nginx untuk melaksanakan sokongan untuk protokol WebSocket. Dengan cara ini, kami boleh menggunakan prestasi Nginx yang berkuasa dan konfigurasi fleksibel untuk mencapai komunikasi WebSocket yang lebih cekap dan stabil. Walau bagaimanapun, perlu diingatkan bahawa Nginx sendiri bukanlah pelayan WebSocket Ia hanya digunakan sebagai pelayan proksi untuk memajukan sambungan WebSocket ke pelayan belakang untuk diproses. Jika anda perlu menggunakan pelayan WebSocket yang lengkap, kami boleh mempertimbangkan untuk menggunakan perisian pelayan WebSocket khusus yang lain. 🎜Atas ialah kandungan terperinci Bagaimana untuk menggunakan pelayan proksi Nginx untuk melaksanakan sokongan protokol WebSocket?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Cara mengkonfigurasi nama domain Nginx pada pelayan awan: Buat rekod yang menunjuk ke alamat IP awam pelayan awan. Tambah blok hos maya dalam fail konfigurasi Nginx, menyatakan port pendengaran, nama domain, dan direktori akar laman web. Mulakan semula nginx untuk memohon perubahan. Akses konfigurasi ujian nama domain. Nota Lain: Pasang sijil SSL untuk membolehkan HTTPS, pastikan firewall membenarkan trafik port 80, dan tunggu resolusi DNS berkuatkuasa.

Kaedah yang boleh menanyakan versi nginx adalah: gunakan perintah nginx -v; Lihat arahan versi dalam fail nginx.conf; Buka halaman ralat Nginx dan lihat tajuk halaman.

Memulakan pelayan Nginx memerlukan langkah-langkah yang berbeza mengikut sistem operasi yang berbeza: Sistem Linux/Unix: Pasang pakej Nginx (contohnya, menggunakan apt-get atau yum). Gunakan SystemCTL untuk memulakan perkhidmatan Nginx (contohnya, SUDO SystemCTL Mula Nginx). Sistem Windows: Muat turun dan pasang fail binari Windows. Mula Nginx menggunakan nginx.exe executable (contohnya, nginx.exe -c conf \ nginx.conf). Tidak kira sistem operasi yang anda gunakan, anda boleh mengakses IP pelayan

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Docker Container Startup Langkah: Tarik Imej Bekas: Run "Docker Pull [Mirror Name]". Buat bekas: Gunakan "Docker Buat [Pilihan] [Nama Mirror] [Perintah dan Parameter]". Mulakan bekas: Jalankan "Docker Start [Nama Container atau ID]". Semak Status Kontena: Sahkan bahawa bekas sedang berjalan dengan "Docker PS".

Untuk mendapatkan Nginx untuk menjalankan Apache, anda perlu: 1. Pasang Nginx dan Apache; 2. Konfigurasikan ejen Nginx; 3. Mula Nginx dan Apache; 4. Uji konfigurasi untuk memastikan bahawa anda dapat melihat kandungan Apache selepas mengakses nama domain. Di samping itu, anda perlu memberi perhatian kepada perkara -perkara lain seperti padanan nombor port, konfigurasi tuan rumah maya, dan tetapan SSL/TLS.
