server {
listen 80;
server_name example.com;
location / {
root /var/www/example.com;
}
location /images/ {
root /var/www/example.com;
}
location /admin/ {
root /var/www/example.com;
}
}
Ketika kien mengakses `http://example.com`, permintaan akan diarahkan ke block location `/`, yang akanmengarahkan ke directori root `/var/www/example.com`. Kerika klien mengakses `http://example.com/images/logo.png`, permintaan yang akan diarahkan ke block location `/images/`, yang juga akan mengarahkan ke direktori root `/var/www/example.com`. Begitu pula dengan klien yang mengakses `http://example.com/admin/dashboard`, permintaan akan diarahkan ke block location `/admin/`.
Menggunakan Location Block sebagai Reverse Proxy
Salah satu penggunaan umum location block dalam Nginx adalah sebagai reverse proxy. Reverse proxy adalah sebuah server proxy yang menerima permintaan dari klien dan meneruskannya ke server yang sebenarnya. Reverse proxy dapat digunakan untuk melindungi server asli dari serangan, meningkatkan performa, dan menyederhanakan arsitektur sistem.
Dalam contoh ini, kita akan menggunakan location block untuk meneruskan permintaan dari klirn ke aplikasi Docker yang berjalan di alamat `http://192.168.126.128:8080` pada alamat `/dashboard/`.
location /dashboard/ {
proxy_pass http://192.168.126.128: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;
}
Ketika klien mengakses `http://example.com/dashboard/`, permintaan akan diarahkan ke blok location `/dashboard/`, yang adakan meneruskan permintaan ke aplikasi Docker yang berjalan di `http://192.168.126.128:8000`, Konfigurasi `proxy_pass` menunjukan alamat IP dan port dari aplikasi Docker. Konfigurasi `proxy_set_header` digunakan untuk menambahkan header HTTP yang diperlukan untuk meneruskan permintaan dengan benar.
Kesimpulan
Location block adalah fitur penting dalam konfigurasi Nginx, Location block digunakan untuk menentukan cara Nginx