Nginx

Contoh regex lokasi Nginx

Contoh regex lokasi Nginx
Arahan Lokasi Nginx memungkinkan permintaan perutean ke lokasi tertentu dalam sistem file. Saat Nginx mencocokkan atau mencari blok lokasi dengan URL yang diminta, arahan lokasi memberi tahu Nginx tempat mencari jalur tertentu dengan memasukkan semua file dan direktori.

Kami akan menjelaskan contoh regex lokasi Nginx secara singkat di artikel ini.

Prasyarat

Diasumsikan dalam artikel ini bahwa Nginx sudah terinstal di sistem Anda.

Sintaks arahan lokasi Nginx

Sintaks berikut tersedia untuk direktori lokasi di file konfigurasi Nginx:

lokasi [pengubah] [pencocokan URL]

Blok lokasi Nginx dapat ditambahkan di blok server atau di lokasi lain dengan beberapa kondisi yang telah ditentukan. Dalam sintaks di atas, pengubah adalah parameter opsional. Kehadiran pengubah di blok lokasi memungkinkan Nginx menangani URL dalam urutan yang berbeda different. Di sini, beberapa pengubah disebutkan di bawah ini dengan beberapa contoh:

1. Mencocokkan semua permintaan dengan blok lokasi Nginx

'/' digunakan untuk lokasi awalan agar sesuai dengan semua permintaan. Namun, jika tidak ada kecocokan terbaik yang dicari, itu akan digunakan sebagai hasil terakhir.

Contoh
Di blok lokasi berikut, itu akan cocok dengan semua permintaan:

lokasi /

2. Cocokkan direktori menggunakan blok lokasi di Nginx

Contoh berikut akan cocok dengan permintaan apa pun di blok lokasi yang dimulai dengan /images/. Akibatnya, mencari blok cocok yang lebih spesifik terhadap URI yang diminta. Namun, jika Nginx tidak mencari kecocokan yang lebih spesifik, maka blok lokasi akan dipilih secara langsung.

Contoh
Dalam contoh yang diberikan di bawah ini, Nginx akan mencocokkan permintaan apa pun di blok lokasi yang dimulai dengan /images/.

lokasi /gambar/

3. Sama persis dengan menggunakan '=' (sama dengan) pengubah lokasi

Pengubah '=' tanda sama dengan digunakan saat Anda sama persis dengan blok lokasi dengan URI yang diminta.

Contoh
Nginx pertama-tama mencoba mencocokkan lokasi awalan yang paling spesifik. Namun, dalam contoh berikut, pengubah '=' di blok lokasi akan sama persis dengan jalur awalan yang diminta dan kemudian berhenti mencari kecocokan yang lebih baik.

lokasi = /imgs

Dalam contoh blok lokasi yang disebutkan di atas, pengubah lokasi '=' akan sama persis dengan URL mydomain.com/imgs. URL 'domainku/imgs/indeks.html' atau 'mydomain/imgs/' tidak akan cocok dengan ketentuan.

4. Pencocokan Regex peka huruf besar-kecil menggunakan pengubah Tilda (~)

Pengubah tilda (~) melakukan pencarian kecocokan ekspresi reguler peka huruf besar-kecil terhadap URI yang diminta dan terus mencari kecocokan yang lebih baik.

Contoh
Pengubah ~ dalam contoh berikut melakukan pencocokan regex (ekspresi reguler) peka huruf besar-kecil di blok lokasi:

lokasi ~ /imgs

5. Pencocokan case-sensitive menggunakan pengubah tilda (~*)

Tanda tilde dengan pengubah asterisk (~*) cocok dengan permintaan (tidak peka huruf besar/kecil) apa pun di blok lokasi berikutnya yang diakhiri dengan format file tertentu seperti file yang diakhiri dengan png, gif, ico, jpeg, jpg, css, atau js. Namun, setiap permintaan yang dikirim ke folder /imgs/ akan dilayani oleh blok lokasi sebelumnya.

Contoh
Di blok lokasi berikut, itu akan cocok dengan semua jenis file case-insensitive.

lokasi ~* .(png|ico|gif|jpg|jpeg|css|js)$

6. Pengubah Caret-Tilde Sign (^~) untuk RegEx Match

Pengubah caret-tilda (^~) digunakan untuk melakukan pencocokan ekspresi reguler peka huruf besar/kecil terhadap URL yang diminta. Oleh karena itu, jika URI yang cocok akan dicocokkan di /imgs atau /imgs/pico.png, berhenti mencari untuk menemukan kecocokan yang lebih baik.

lokasi ^~ /imgs

Kesimpulan

Kami telah membahas beberapa contoh dan detail penting tentang arahan lokasi Nginx dengan regex. Kami juga telah menyebutkan penggunaan pengubah dengan contoh di artikel ini. Saya harap artikel ini akan membantu Anda memahami konsep utama blok lokasi di NGINX. Terima kasih!

Cara Menampilkan Overlay OSD di Aplikasi dan Game Linux Layar Penuh
Memainkan game layar penuh atau menggunakan aplikasi dalam mode layar penuh bebas gangguan dapat memutus Anda dari informasi sistem yang relevan yang ...
5 Kartu Tangkap Game Teratas
Kita semua telah melihat dan menyukai gameplay streaming di YouTube. PewDiePie, Jakesepticye, dan Markiplier hanyalah beberapa pemain top yang telah m...
Cara Mengembangkan Game di Linux
Satu dekade yang lalu, tidak banyak pengguna Linux yang memprediksi bahwa sistem operasi favorit mereka suatu hari nanti akan menjadi platform game po...