Menggunakan Nginx sebagai Reverse Proxy untuk Aplikasi Go
Kalau kamu bikin aplikasi web dengan Go, biasanya aplikasinya jalan langsung di port tertentu, misalnya :8080. Masalahnya, kalau saya ingin aplikasi ini bisa diakses lewat domain (misalnya yourdomain.com) dengan port standar :80 atau bahkan :443 (HTTPS), saya butuh “penengah”. Nah, di sinilah Nginx berperan sebagai reverse proxy.
Dengan Nginx di depan aplikasi Go, kita bisa dapat banyak keuntungan:
Request dari user lewat dulu ke Nginx sebelum diteruskan ke Go. Bisa tambah SSL (HTTPS) dengan gampang. Bisa bagi-bagi beban (load balancing) kalau aplikasinya jalan di beberapa instance. Nginx juga lebih efisien untuk melayani file statis (gambar, CSS, JS, dll). Di artikel ini, saya bahas cara setup-nya langkah demi langkah.