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

    • Canonical: Ubuntu coming soon to Snapdragon X2 Series platforms
    • Finally, wolfSSL adds post-quantum algorithms!
    • How to Run Gemma Embedding Models Using Docker
    • Deploy Nginx Rootful Container with Podman
    • How to Sandboxing Browser on Linux Desktop with Flatpak
    • How to Hardening Journald on Linux Server (Fedora/AlmaLinux)
    • Block Bad USB on Linux Server with USBGuard
    • How to Secure NetworkManager on Fedora/AlmaLinux
    • How to Secure DNS and NTP in Fedora Linux
    • How to Hardening DNF on Fedora/Almalinux
    • How to Masking & Secure Daemon in Linux Server
    • How to Hardening Mount Option in Linux Server
    • How to Secure Linux Server with AIDE
    • Auditd Custom Rules & Tips
    • Securing SSH Server with fail2ban
    • Fedora Linux Firewalld Drop Zone and Rich Rules
    • How to SSH Hardening 2026
    • How to Add Password Protection to GRUB
    • Linux Kernel Hardening: Command-line Lockdown
    • Make Linux Kernel More Safe and Hardening with Sysctl Easy Way
    • How to Lockdown Root & Wheel Group in Linux
    • How to Secure Sudo in Linux (Secure Sudo Logging & Timeout)
    • Make Fedora Login Safe with Authselect and Faillock
    • How Measure Linux Security Use OpenSCAP Lynis and Systemd
    • SELinux Make Nginx Break and How to Fix It Easy
    • Kenapa Postingan Instagram Kalian Sepi Like Padahal Followers Udah Banyak? Ini Rahasianya
    • Cara Menambah View Story Instagram Gratis Biar Nggak Sia-sia
    • Kenapa View TikTok Kalian Mentok di Angka Kecil dan Cara Ngatasinnya
    • Imbas Pesatnya Laporan CVE, Ubuntu Bakal Rilis Kernel Update Tiap Dua Minggu
    • Cara Gampang Cari Kata di Google Sheets Pakai Laptop sama HP
    • Pruna AI Release their Qwen-Image 2.1 LoRA Adapter, 6x Faster than Regular Qwen
    • The Rise and Fall of the Coding Holy Grail: Is Stack Overflow Just AI Fuel Now?
    • Zyphra is The Pioneer, Why Everyone is Suddenly Obsessed with AMD and Not Just Nvidia Anymore
    • Stop Trusting Your Prompts to Save Your Business Data
    • How to Automate Your Entire SEO Strategy Using a Swarm of 100 Free AI Agents Working in Parallel
    RSS Error: WP HTTP Error: A valid URL was not provided.
    ©2026 Tutorial emka | Design: Newspaperly WordPress Theme