Cara Memperbaiki Error WebSocket handshake: Unexpected re…

スポンサーリンク

WebSocket handshake: Unexpected response code: 404 – Solusi Lengkap

Gambaran Umum Error

Pesan kesalahan “WebSocket handshake: Unexpected response code: 404” biasanya muncul ketika aplikasi web Anda mencoba untuk menggunakan koneksi WebSocket, tetapi server tidak dapat menemukan endpoint yang sesuai untuk mengatur koneksi tersebut. Kode respons 404 menandakan bahwa URL yang diminta tidak ditemukan di server.

WebSocket adalah protokol komunikasi yang menyediakan saluran komunikasi full-duplex melalui satu koneksi TCP. Masalah ini seringkali mengindikasikan adanya kesalahan dalam konfigurasi server atau aplikasi yang Anda gunakan.

Penyebab Umum

Berikut adalah beberapa penyebab umum dari kesalahan ini:

  1. Endpoint Tidak Ditemukan: URL WebSocket yang digunakan tidak terdaftar di server.
  2. Pengaturan Proxy yang Salah: Jika menggunakan Nginx atau server proxy lainnya, pengaturan mungkin tidak benar.
  3. Versi Tornado yang Tidak Kompatibel: Versi Tornado yang lebih baru terkadang tidak sepenuhnya kompatibel dengan kode yang lebih lama.
  4. Masalah Konfigurasi Aplikasi: Aplikasi yang berjalan di server mungkin tidak terkonfigurasi dengan benar untuk menerima koneksi WebSocket.
  5. Kesalahan dalam URL: URL yang digunakan untuk koneksi WebSocket mungkin salah ketik atau tidak sesuai.

Metode Solusi

Metode 1: Mengubah Versi Tornado

Jika Anda menggunakan Tornado dan mengalami masalah ini, Anda dapat mengubah versi Tornado ke versi yang lebih stabil, seperti versi 5.1.1.

  1. Buka terminal atau command prompt.
  2. Jalankan perintah berikut untuk menghapus versi Tornado yang ada:
    bash
    sudo pip3 uninstall tornado
  3. Setelah itu, instal versi yang diinginkan dengan perintah:
    bash
    sudo pip3 install tornado==5.1.1

Metode 2: Memperbaiki Konfigurasi Nginx

Jika server Anda menggunakan Nginx sebagai reverse proxy, Anda perlu memastikan bahwa pengaturan proxy sudah benar.

  1. Edit file konfigurasi Nginx Anda, biasanya terletak di /etc/nginx/nginx.conf atau /etc/nginx/sites-available/default.
  2. Tambahkan atau pastikan ada baris konfigurasi ini dalam blok lokasi yang sesuai:
    “`nginx
    location /your-websocket-endpoint

コメント

タイトルとURLをコピーしました