Apa Itu Proxy dan Bagaimana Menggunakan ProxyPass di Nginx & Apache

Pengertian Proxy
Proxy adalah server perantara yang bertindak sebagai jembatan antara klien dan server tujuan. Proxy dapat digunakan untuk berbagai keperluan seperti meningkatkan keamanan, caching, load balancing, dan menyembunyikan identitas pengguna.
Apa Itu ProxyPass?
ProxyPass adalah fitur yang memungkinkan server web seperti Apache dan Nginx meneruskan permintaan ke server lain. Ini berguna dalam konfigurasi reverse proxy, di mana server menerima permintaan dari klien dan meneruskannya ke backend yang sesuai.
Keuntungan Menggunakan ProxyPass
-
Load Balancing: Memungkinkan distribusi lalu lintas ke beberapa server backend.
-
Keamanan: Menyembunyikan arsitektur backend dari pengguna akhir.
-
Caching: Meningkatkan performa dengan menyimpan konten yang sering diakses.
-
SSL Termination: Mengelola enkripsi di proxy sebelum meneruskan ke backend.
Contoh Konfigurasi ProxyPass di Apache
Di Apache, modul mod_proxy
digunakan untuk mengaktifkan ProxyPass. Tambahkan konfigurasi berikut dalam file virtual host:
<VirtualHost *:80> ServerName contoh.com ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ <Proxy *> Order allow,deny Allow from all </Proxy> </VirtualHost>
Konfigurasi ini meneruskan semua permintaan dari contoh.com
ke localhost:8080
.
Contoh Konfigurasi ProxyPass di Nginx
Di Nginx, kita bisa menggunakan direktif proxy_pass
dalam konfigurasi server:
server { listen 80; server_name contoh.com; location / { proxy_pass http://localhost:8080/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
Konfigurasi ini juga meneruskan semua permintaan dari contoh.com
ke localhost:8080
, dengan header tambahan untuk mempertahankan informasi klien asli.
Kesimpulan
ProxyPass adalah alat yang sangat berguna untuk mengelola lalu lintas jaringan dan meningkatkan efisiensi server web. Dengan Apache dan Nginx, kita dapat dengan mudah menerapkan ProxyPass untuk berbagai keperluan, mulai dari load balancing hingga peningkatan keamanan.