HTTP forwarder atau proxy menggunakan Nginx

Nginx adalah server web yang serbaguna yang dapat melakukan berbagai tugas, termasuk sebagai HTTP forwarder atau proxy. Dalam artikel ini, kita akan membahas cara mengkonfigurasi Nginx sebagai HTTP forwarder.

Langkah 1: Instalasi Nginx

Pertama-tama, pastikan Nginx sudah terinstall pada sistem Anda. Jika belum, instal Nginx dengan perintah berikut:

 
sudo apt-get update sudo apt-get install nginx

Langkah 2: Konfigurasi HTTP Forwarding

Setelah instalasi Nginx selesai, buka file konfigurasi default dengan menjalankan perintah berikut:

 
sudo nano /etc/nginx/sites-available/default

Kemudian, tambahkan konfigurasi berikut di bawah blok server:

location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

Penjelasan dari konfigurasi di atas adalah sebagai berikut:

  • location : Menentukan URL mana yang akan diteruskan.
  • proxy_pass : Menentukan tujuan forwarding, yaitu server yang ingin Anda teruskan.
  • proxy_set_header : Menentukan header yang akan diatur dan dikirim ke server tujuan.

Anda harus mengganti your_destination_server dengan alamat IP atau nama domain server tujuan yang ingin Anda teruskan. Simpan dan tutup file konfigurasi.

Langkah 3: Restart Nginx

Setelah selesai mengedit file konfigurasi, restart Nginx untuk menerapkan perubahan dengan perintah berikut:

sudo systemctl restart nginx

Sekarang, Nginx sudah dikonfigurasi sebagai HTTP forwarder. Ketika Anda mengakses URL yang telah ditentukan, Nginx akan meneruskan permintaan ke server tujuan yang telah ditentukan sebelumnya.

Ini berguna misalnya ANda memiliki aplikasi laravel yang dijalankan di server menggunakan php artisan dan berjalan pada port 8000. Atau Aplikasi node js yg berjalan pada port 3000 agerbisa diakses melalui DNS