У овом чланку ћемо укратко објаснити примере регуларних израза локације Нгинк.
Предуслови
У овом чланку се претпоставља да је Нгинк већ инсталиран на вашем систему.
Синтакса Нгинк директиве о локацији
Следећа синтакса је доступна за директоријум локација у Нгинк конфигурационој датотеци:
локација [модификатор] [подударање УРЛ-а]…
Блок локације Нгинк може се додати у сервер блок или на другу локацију уз неке унапред дефинисане услове. У горњој синтакси, модификатор је опциони параметар. Присуство модификатора у блоку локације омогућава Нгинку да обрађује УРЛ у другом редоследу. Овде се у наставку помиње неколико модификатора са неколико примера:
1. Поклапање свих захтева са блоком локације Нгинк
Знак '/' користи се за локацију префикса како би одговарао свим захтевима. Међутим, ако тада не буде тражено ниједно најбоље подударање, користиће се као последњи резултат.
Пример
У следећем блоку локације подудараће се са свим захтевима:
2. Подударање директоријума помоћу блока локације у Нгинк-у
Следећи пример ће се подударати са било којим захтевом у блоку локације који почиње са / имагес /. Сходно томе, тражење конкретнијег подударног блока у односу на тражени УРИ. Међутим, ако Нгинк не потражи тачније подударање, блок локације ће бити изабран директно.
Пример
У доњем примеру, Нгинк ће се подударати са било којим захтевом у блоку локације који почиње са / имагес /.
3. Тачно се подудара помоћу модификатора локације '=' (једнако)
Модификатор '=' знак једнакости користи се када тачно подударате блок локације са траженим УРИ-јем.
Пример
Нгинк прво покушава да се подудара са најконкретнијим локацијама префикса. Међутим, у следећем примеру, модификатор '=' у блоку локације тачно ће се подударати са траженом путањом префикса, а затим зауставити тражење бољих подударања.
…
У горе поменутом примеру блока локације, модификатор локације '=' тачно ће се подударати са УРЛ доменом.цом / имгс. УРЛ адресе 'мидомаин / имгс / индек.хтмл 'или' мидомаин / имгс / 'неће одговарати услову.
4. Реггекс подсетник на велика и мала слова користи Тилда (~) модификатор
Модификатор тилда (~) врши претрагу подударања регуларних израза осетљивих на мала и велика слова према траженом УРИ-у и непрекидно тражи боље подударање.
Пример
Модификатор ~ у следећем примеру изводи подударање регуларног израза који разликује велика и мала слова (регуларни израз) у блоку локације:
…
5. Подударање без великих и малих слова помоћу модификатора тилда (~ *)
Знак тилде са модификатором звездице (~ *) подудара се са било којим захтевом (без великих и малих слова) у следећем блоку локације који се завршава одређеним форматом датотеке, као што је датотека која се завршава с пнг, гиф, ицо, јпег, јпг, цсс или јс. Међутим, сви захтеви који се пошаљу у директоријум / имгс / биће забављени претходним блоком локације.
Пример
У следећем блоку локације подудараће се са свим врстама датотека које не разликују мала и велика слова.
…
6. Модификатор знака Царет-Тилде (^ ~) за РегЕк Матцх
Модификатор царет-тилда (^ ~) користи се за извођење подударања регуларног израза осетљивог на велика и мала слова са траженом УРЛ адресом. Стога, ако ће се подударни УРИ подударати у / имгс или / имгс / пицо.пнг, престаје да тражи бољу подударност.
локација ^ ~ / имгс…
Закључак
Разговарали смо о неколико примера и важних детаља о Нгинк директиви о локацији са регуларним изразом. Такође смо поменули употребу модификатора са примерима у овом чланку. Надам се да ће вам овај чланак помоћи да разумете главни концепт блокова локација у НГИНКС-у. Хвала!