Kami akan menerangkan contoh-contoh regex lokasi Nginx secara terperinci dalam artikel ini.
Prasyarat
Diandaikan dalam artikel ini bahawa Nginx sudah terpasang pada sistem anda.
Sintaks arahan lokasi Nginx
Sintaks berikut tersedia untuk direktori lokasi dalam fail konfigurasi Nginx:
lokasi [pengubah] [padanan URL]…
Blok lokasi Nginx dapat ditambahkan di blok pelayan atau di lokasi lain dengan beberapa keadaan yang telah ditentukan. Dalam sintaks di atas, pengubah adalah parameter pilihan. Kehadiran pengubah dalam blok lokasi membolehkan Nginx berurusan dengan URL dalam urutan yang berbeza. Di sini, beberapa pengubah disebutkan di bawah dengan beberapa contoh:
1. Memadankan semua permintaan dengan blok lokasi Nginx
The '/' digunakan untuk lokasi awalan untuk mencocokkan semua permintaan. Namun, jika tidak ada pencocokan terbaik yang dicari, ia akan digunakan sebagai hasil terakhir.
Contohnya
Di blok lokasi berikut, ia akan sesuai dengan semua permintaan:
2. Padankan direktori menggunakan blok lokasi di Nginx
Contoh berikut akan sesuai dengan sebarang permintaan di blok lokasi yang bermula dengan / images /. Akibatnya, mencari blok pencocokan yang lebih khusus terhadap URI yang diminta. Namun, jika Nginx tidak mencari padanan yang lebih spesifik, blok lokasi akan dipilih secara langsung.
Contohnya
Di bawah ini diberikan contoh, Nginx akan memadankan sebarang permintaan di blok lokasi yang bermula dengan / images /.
3. Padanan tepat menggunakan pengubah lokasi '=' (sama dengan)
Pengubah '=' tanda sama digunakan apabila anda memadankan blok lokasi dengan URI yang diminta.
Contohnya
Nginx pertama kali mencuba untuk memadankan 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 pencocokan yang lebih baik.
…
Dalam contoh blok lokasi yang disebutkan di atas, pengubah lokasi '=' akan sama dengan URL domain saya.com / imgs. Mydomain / imgs / indeks URL.html 'atau' mydomain / imgs / 'tidak akan sepadan dengan keadaan.
4. Perlawanan Regex peka huruf besar kecil menggunakan pengubah suai Tilda (~)
Pengubah tilda (~) melakukan carian padanan huruf biasa peka huruf besar kecil terhadap URI yang diminta dan terus mencari pencocokan yang lebih baik.
Contohnya
Pengubah ~ dalam contoh berikut melakukan padanan regex (ungkapan biasa) peka huruf besar kecil di blok lokasi:
…
5. Padanan peka huruf besar dengan menggunakan pengubah tilda (~ *)
Tanda tilde dengan pengubah asterisk (~ *) sesuai dengan sebarang permintaan (tidak peka huruf besar kecil) di blok lokasi seterusnya yang diakhiri dengan format fail tertentu seperti fail yang diakhiri dengan png, gif, ico, jpeg, jpg, css, atau js. Bagaimanapun, permintaan yang dihantar ke / imgs / folder akan dilayan oleh blok lokasi sebelumnya.
Contohnya
Di blok lokasi berikut, ia akan sesuai dengan semua jenis fail yang tidak peka huruf besar kecil.
…
6. Pengubah Caret-Tilde Sign (^ ~) untuk RegEx Match
Pengubah karet-tilda (^ ~) digunakan untuk melakukan padanan huruf biasa yang peka huruf besar kecil dengan URL yang diminta. Oleh itu, jika URI yang sepadan akan dipadankan di / imgs atau / imgs / pico.png, ia berhenti mencari untuk mencari padanan yang lebih baik.
lokasi ^ ~ / imgs…
Kesimpulannya
Kami telah membincangkan beberapa contoh dan perincian penting mengenai arahan lokasi Nginx dengan regex. Kami juga telah menyebut penggunaan pengubah dengan contoh dalam artikel ini. Saya harap artikel ini dapat membantu anda memahami konsep utama blok lokasi di NGINX. Terima kasih!