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

    • How to Secure Your Moltbot (ClawdBot): Security Hardening Fixes for Beginners
    • Workflows++: Open-source Tool to Automate Coding
    • MiroThinker-v1.5-30B Model Explained: Smart AI That Actually Thinks Before It Speaks
    • PentestAgent: Open-source AI Agent Framework for Blackbox Security Testing & Pentest
    • TastyIgniter: Open-source Online Restaurant System
    • Reconya Explained: Open-source Tool to Get Digital Footprint and Usernames Across the Web
    • Armbian Imager Explained: The Easiest Way to Install Linux on Your Single Board Computer
    • Rust FS Explained: The Best Open Source S3 Mock for Local Development
    • How to Fly a Drone Autonomously with Cloudflare MCP Agent
    • Python Parameters and Arguments Explained!
    • Top 5 Best Free WordPress Theme 2026
    • How to Create openAI Embedding + Vector Search in Laravel
    • Watch This Guy Create Offroad RC with Self-driving Capability and AI Agent
    • Coding on the Go: How to Fix Bugs from Your Phone using Claude AI Explained
    • Post-AI Era: Are Junior Developer Screwed?
    • SQL Server 2025 Explained: Building a Smart YouTube Search Engine with AI
    • How to Build Intelligent Apps with TanStack AI: A Complete Guide for Beginners
    • ORM, SQL, or Stored Procedures? The Best Way to Handle Data for Beginners
    • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
    • Topical Authority Explained: How to Rank Higher and Outsmart Competitors
    • Skills.sh Explained
    • Claudebot Explained: How to Create Your Own 24/7 AI Super Agent for Beginners
    • How to Create Viral Suspense Videos Using AI
    • The Secret “Niche Bending” Trick To Go Viral On YouTube, January 2026
    • Stuck on TikTok Affiliate? Here Is Why You Should Start a New Account
    • Paket Nyangkut di CRN Gateway J&T? Tidak Tahu Lokasinya? Ini Cara Mencarinya!
    • Apa itu Nomor 14055? Nomor Call Center Apa? Ini Penjelasan Lengkapnya
    • Apakah APK Lumbung Dana Penipu & Punya Debt Collector?
    • Ini Ukuran F4 dalam Aplikasi Canva
    • Cara Lapor SPT Tahunan Badan Perdagangan di Coretax 2026
    • Cara Membuat Pipeline RAG dengan Framework AutoRAG
    • Contoh Sourcecode OpenAI GPT-3.5 sampai GPT-5
    • Cara Mengubah Model Machine Learning Jadi API dengan FastAPI dan Docker
    • Cara Ubah Tumpukan Invoice Jadi Data JSON dengan LlamaExtract
    • Cara Buat Audio Super Realistis dengan Qwen3-TTS-Flash
    • 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