Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Berjaya Mengintegrasikan Go-WebSocket dengan Apache mod_proxy_wstunnel?

Bagaimana untuk Berjaya Mengintegrasikan Go-WebSocket dengan Apache mod_proxy_wstunnel?

Patricia Arquette
Lepaskan: 2024-12-25 21:26:17
asal
927 orang telah melayarinya

How to Successfully Integrate Go-WebSocket with Apache mod_proxy_wstunnel?

Mengintegrasikan Go-WebSocket di belakang Apache mod_proxy_wstunnel

Dalam percubaan untuk memanfaatkan keupayaan proksi terbalik Apache dengan go-websocket, pembangun menemui beberapa halangan.

Apache Konfigurasi

Berikut ialah konfigurasi Apache yang digunakan:

<VirtualHost *:80>
    DocumentRoot /var/www/foobar
    ServerName foobar.com
    ProxyPass / http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/
    ProxyPass /ws/ ws://localhost:8080/ws/
    ProxyPassReverse /ws/ ws://localhost:8080/ws/
    ErrorLog logs/error_log-foobar
    CustomLog logs/access_log-foobar common
    LogLevel debug
</VirtualHost>
Salin selepas log masuk

Ralat Awal

Setelah pelaksanaan awal, ralat 403 Forbidden berlaku, menunjukkan masalah dengan semakan asal. Selepas melumpuhkan semakan asal, ralat 400 Permintaan Buruk muncul, menandakan pelayan sembang tidak menerima permintaan naik taraf.

Menyelesaikan masalah

Selepas berunding dengan pelbagai sumber, langkah berikut telah diambil untuk menyelesaikan isu:

  • Mengekor Slash: Seperti yang dicadangkan oleh Aralo, slash mengekor telah ditambahkan pada laluan WebSocket (/ws/). Ini memastikan Apache hanya akan mengendalikan WebSocket dengan permintaan GET yang sah.
  • Pesanan ProxyPass: Mengikut cadangan James Henstridge, ProxyPass untuk /ws/ diletakkan sebelum baris /, mengubah susunan dalam permintaan mana yang telah dikendalikan.
  • Penyingkiran Cek Asal: Semakan asal dalam fungsi ServeWs() telah dikenal pasti dan dialih keluar, menyelesaikan isu tersebut.

Penyatuan Berjaya

Pengubahsuaian ini memastikan penyepaduan go-websocket berjaya di belakang Apache mod_proxy_wstunnel. Log ralat Apache membantu mengenal pasti dan membetulkan ralat awal.

Atas ialah kandungan terperinci Bagaimana untuk Berjaya Mengintegrasikan Go-WebSocket dengan Apache mod_proxy_wstunnel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan