Konfigurasi Nginx Reverse Proxy: Panduan Teknis & Implementasi

Prinsip Dasar Nginx Reverse Proxy

Nginx berfungsi sebagai reverse proxy dengan menerima permintaan dari klien (browser) dan meneruskannya ke server aplikasi (backend) yang berjalan di port internal. Konfigurasi ini krusial untuk meningkatkan keamanan, skalabilitas, dan manajemen SSL pada aplikasi seperti WordPress atau n8n yang di-hosting di VPS.

Struktur Konfigurasi Utama

Inti dari konfigurasi reverse proxy terletak pada direktif proxy_pass di dalam blok location. Berikut adalah sintaks dasar yang harus diterapkan pada file konfigurasi Nginx Anda:

server {
    listen 80;
    server_name domainanda.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Tabel Parameter Proxy Penting

DirektifFungsi
proxy_passMenentukan alamat server backend (IP/Port).
proxy_set_header HostMeneruskan header Host asli ke backend.
proxy_set_header X-Real-IPMengirimkan IP asli klien ke aplikasi.
proxy_set_header X-Forwarded-ProtoMemberitahu backend apakah koneksi via HTTP atau HTTPS.

Implementasi pada Aplikasi Spesifik

Dalam ekosistem server modern, Nginx sering digunakan untuk membungkus aplikasi berbasis Docker seperti n8n atau CMS seperti WordPress. Untuk n8n yang berjalan di Docker, pastikan port internal (biasanya 5678) dipetakan dengan benar ke Nginx. Pada WordPress, Nginx berperan sebagai frontend yang menangani request PHP-FPM atau meneruskan ke Apache jika menggunakan konfigurasi hybrid.

Langkah Troubleshooting Lapangan

  • Cek Sintaks: Jalankan nginx -t sebelum melakukan reload untuk memastikan tidak ada kesalahan penulisan.
  • Izin Akses: Pastikan user www-data memiliki akses ke direktori aplikasi.
  • Firewall: Pastikan port 80 dan 443 terbuka di firewall VPS (UFW/Iptables).
  • Log Error: Periksa /var/log/nginx/error.log jika terjadi 502 Bad Gateway, yang biasanya menandakan backend tidak merespons.

Penggunaan reverse proxy memungkinkan Anda menjalankan banyak layanan dalam satu VPS dengan membedakan trafik berdasarkan domain atau sub-domain, yang sangat efisien untuk manajemen server pribadi.