Konfigurasi Location Block Nginx


Konfigurasi Location Block Nginx - Pada artikel sebelumnya www.dimasrio.com sudah membahas tentang konfigurasi gzip nginx di centos 7. Block konfigurasi pada nginx terdiri dari server block dan location block. Server block digunakan untuk mendefine sebuah virtual server, sedangkan location block digunakan untuk mendefinisikan bagaimana sebuah request uri di proses. 

Nginx Location Block

Location block nginx terdiri dari berberapa option regular expression (regex) yang akan menentukan bagaimana location block tersebut akan di proses.
  • (none) : Jika kita tidak mendefinisikan options pada location block, maka nginx akan membaca awalan yang cocok dengan uri.
  • = : Option ini jika digunakan untuk membaca uri secara exact, jadi uri dan location harus benar-benar sama, jika request uri tidak sama satu huruf pun dengan location block maka request tidak akan di proses.
  • ~ : Digunakan agar location di baca sebagai regular expression case sensitive.
  • ~* : Digunakan agar location di baca sebagai regular expression case insensitive.
  • ˆ~ : Hampir sama dengan standard location block, pengecekan berdasarkan awalan dari uri dan akan dibaca lebih dahulu dibandingkan regex.
Setelah kita mengetahui berberapa option untuk menetukan location block, kali ini kita akan mencoba menerapkan location block pada pembahasan sebelumnya. Bagi sobat yang belum membaca tutorial sebelumnya bisa mengikuti link di bawah ini.
Install Nginx Source di CentOS 7
Konfigurasi OpenSSL Nginx di CentOS 7
Masih dengan file conf yang sebelumnya, berikut contoh regular expression pada block location.
nano /opt/nginx/conf/vhosts/dimzrio-com.conf

None Block

location /files {
      return 200 "This is an example non block";
}
Block di atas akan membaca uri yang berawalan dengan kata /files.
Contoh :
  • https://dimzrio.com/files
  • https://dimzrio.com/filesxxx

Case Sensitive

location ~ /files[0-9] {
       return 200 "This is an example case sensitive";
}
Block di atas akan membaca uri case sensitive dengan awalan /files dan di akhiri dengan angka 0 - 9.
Contoh :
  • https://dimzrio.com/files01
  • https://dimzrio.com/files123345

Case Insensitive

location ~* /files[0-9] {
        return 200 "This is an example case insensitive";
}
Block di atas akan membaca uri dengan awalan /files case insensitive dan di akhiri dengan angka 0-9
Contoh :
  • https://dimzrio.com/Files123
  • https://dimzrio.com/FILES9

Preferential

location ^~ /filesinfo {
        return 200 "This is an example standard block, but more important than regex";
}
Contoh :
  • https://dimzrio.com/filesinfo
  • https://dimzrio.com/filesinfoxxx

Block di atas akan membaca uri yang berawalan /filesinfo, meski pada bagian non block juga cocok akan tetapi preferential block akan di baca lebih dahulu di bandingkan block regex lainnya meski secara fungsinya juga sama dengan non block.

Exact Match

location = 50x.html {
       root /opt/nginx/html;
}
Block di atas hanya akan membaca request uri 50x.html pada directory root.
Contoh :
  • https://dimzrio.com/50x,html

Output :


Demikian tutorial nginx saya kali ini mengenai konfigurasi location block pada nginx. Semoga bermanfaat bagi kita semua dan selamat mencoba..!!!!


EmoticonEmoticon

Catatan: Hanya anggota dari blog ini yang dapat mengirim komentar.