Skip to content
Tutorial emka
Menu
  • Home
  • Debian Linux
  • Ubuntu Linux
  • Red Hat Linux
Menu

Tutorial Cara Menjalankan Aplikasi Real-Time dengan Apache dan WebSocket

Posted on October 28, 2024

Aplikasi modern seringkali memanfaatkan WebSocket untuk menghadirkan pengalaman real-time, seperti pembaruan langsung atau fitur chat. Jika aplikasi Anda dijalankan di server Apache, konfigurasi yang tepat diperlukan untuk menangani permintaan WebSocket (wss://). Panduan sederhana ini akan menunjukkan cara mengkonfigurasi Apache untuk menangani permintaan ini, mulai dari mengaktifkan modul yang tepat hingga menyesuaikan pengaturan VirtualHost.

  • WebSocket memungkinkan pesan dikirim dan diterima secara instan dalam aplikasi chat.

    Pembaruan data langsung:

  • WebSocket memungkinkan sinkronisasi permainan, seperti gerakan pemain dan pembaruan status.

    Konfigurasi Apache untuk WebSocket

    Misalnya, Anda memiliki aplikasi Next.JS yang berjalan di URL


    Langkah Konfigurasi:

      Aktifkan Modul yang Dibutuhkan:

      sudo a2enmod proxy
      sudo a2enmod proxy_http
      sudo a2enmod proxy_wstunnel
      sudo a2enmod rewrite
         

    1. Tambahkan konfigurasi berikut ke file VirtualHost Apache Anda (biasanya ditemukan di /etc/apache2/sites-available/):

      <VirtualHost *:80>
          ServerName example.com
      
          # Konfigurasi lainnya (seperti DocumentRoot, dll.)
      
          # Proxy koneksi WebSocket
          RewriteEngine On
          RewriteCond %{HTTP:Upgrade} =websocket [NC]
          RewriteRule /(.*) wss://localhost:3000/$1 [P,L]
      
          # Proxy permintaan HTTP lainnya
          ProxyPass / http://localhost:3000/
          ProxyPassReverse / http://localhost:3000/
      </VirtualHost>
          

      Dalam konfigurasi ini:

        RewriteRule:

      • Menangani lalu lintas HTTP biasa.
      • Setelah melakukan perubahan, restart Apache untuk menerapkan konfigurasi:

              sudo systemctl restart apache2
            

    Penjelasan Konfigurasi:

    Kode konfigurasi di atas mengatur bagaimana Apache menangani permintaan yang datang ke domain .

      mengaktifkan modul rewrite Apache, memungkinkan aturan untuk memanipulasi URL yang masuk.

      memeriksa apakah permintaan yang masuk memiliki header yang nilainya sama dengan . Ini berarti bahwa permintaan tersebut adalah permintaan WebSocket.

      mendefinisikan aturan untuk menangani permintaan WebSocket. Aturan ini mengambil semua permintaan yang sesuai dengan kondisi sebelumnya dan meneruskannya ke server yang menjalankan aplikasi WebSocket di .

      dan menangani permintaan HTTP biasa dengan meneruskan mereka ke server backend di .

      Kesimpulan:

      Dengan mengikuti langkah-langkah yang diuraikan dalam artikel ini, Anda dapat berhasil mengkonfigurasi Apache untuk menangani permintaan WebSocket (wss://), memastikan komunikasi yang lancar antara klien dan server backend. Dengan mengaktifkan modul yang diperlukan dan mengatur konfigurasi ProxyPass dan RewriteRule yang benar, Apache dapat secara efisien memproksi koneksi WebSocket serta mengelola lalu lintas HTTP biasa.

  • Recent Posts

    • Libreboot 26.01 Released With New Board Support Explained
    • Adobe Animate Discontinued: What’s Next for Animators?
    • Notepad Vulnerable, Update Now!
    • 3 Way to Overcome AI Fatigue as a Cloud Engineer
    • How to Configure MCP Servers with GitHub Copilot CLI for AI Development
    • Xiaomi Release a New Gaming Monitor with Refresh Rate 200Hz!
    • Arch Linux February ISO Released with Kernel Updates and Security Fixes
    • Fish Shell 4.4 Released: Enhanced Vi Mode & New Themes Explained
    • How to Create Local User Accounts in Windows 11 Without an Online Account 2026
    • How to Game on an ARM-Based Computer/Arduino
    • Minisforum MS-S1 MAX – 128GB RAM Review
    • Firefox Adds System-Wide AI Blocking Controls: What You Need to Know
    • How to Run Qwen (14B) on AMD MI200 with vLLM
    • How to Enable New Run Dialog in Windows 11
    • How to Disable AI Features in Firefox 148
    • Git 2.53: What’s New?
    • Linux From Scratch Ditches Old System V init
    • How to Maintained the SSD with TRIM
    • What is CVE-2024-21009? Microsoft Office Security Serious Bug
    • Windows 11 Shutdown Problems: Why Your PC Won’t Turn Off (and What Microsoft’s Doing)
    • What is the Steam Overlay Error?
    • Why Your Computer Thinks Winaero Tweaker is Bad (and Why It’s Probably Wrong!)
    • What is Origami Linux? A Super-Safe, Unchangeable Computer System!
    • Why Does OneNote Freeze? Easy Fixes for Typing & Drawing Problems!
    • What is Protected File System (PFS) in Windows 11?
    • Cek HP Anak, Apakah Ada Video Viral Cukur Kumis Bawah
    • Jika ATM Terpelanting, Apakah Saldo Aman?
    • Inilah 5 Rekomendasi Smartwatch Terbaik di Bawah Rp1 Jutaan
    • Siapa Daud Tony yang Ramal Jatuhnya Saham & Harga Emas-Perak?
    • Berapa Cuan Dari 1.000 Tayangan Reels Facebook Pro?
    • Cara Membuat Podcast dari PDF dengan NotebookLlama dan Groq
    • Tutorial Membuat Sistem Automatic Content Recognition (ACR) untuk Deteksi Logo
    • Apa itu Google Code Wiki?
    • Cara Membuat Agen AI Otomatis untuk Laporan ESG dengan Python dan LangChain
    • Cara Membuat Pipeline RAG dengan Framework AutoRAG
    • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
    • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
    • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
    • Siapa itu Kelompok Hacker Silver Fox?
    • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
    ©2026 Tutorial emka | Design: Newspaperly WordPress Theme