Turinys
Nginx be to, kad labai gerai aptarnauja statinius failus ir pasižymi dideliu našumu, kai naudojamas kaip atvirkštinis tarpinis serveris kitos paslaugos atveju ji taip pat turi galingą užklausų apdorojimo variklį, tai leidžia mums valdyti išorines užklausas, gaunamas naudojant HTTP, ir generuoti vidines užklausas, kurias ji sukuria Nginx pagal mūsų programuojamas sąlygas.Išorinės ir vidinės peticijos
Pirmas žingsnis, kurį turime žengti, yra pripažinti išoriniai ir vidiniai prašymai, jų pavadinimai tai jau gana gerai atspindi, gaunami išoriniai prašymai Nginx ne jūsų sistemoje, per HTTP, taigi, kai vartotojas įveda URL, kuris prieštarauja mūsų paslaugai, tai yra išorinė užklausa.
Vidinė peticijaVietoj to sugeneruojama vidinė užklausa NginxTai gali būti arba negali būti susieta su išorine užklausa, nors ji yra santykinė, nes visus įvykius paprastai sukelia naudotojų užklausos.
Taigi, jei, pavyzdžiui, pateksime į a 404 atsakymas puslapis nerastas, Nginx Jei sukonfigūravote kokią nors taisyklę, galite suaktyvinti vidinę užklausą, dėl kurios vartotojas pamatys suasmenintą pranešimą.
Vidaus peticijų rūšys
Galite sugeneruoti dviejų tipų vidines užklausas Nginx, tai yra šie:
Vidiniai peradresavimaiŠio tipo peradresavimo atveju Nginx nukreipia klientų užklausas į vidų, tokiu būdu pakeičiamas URL ir tada užklausa gali keistis tarp vietos blokai kurį apibrėžėme savo serveryje, vienas iš dažniausiai pasitaikančių tokio tipo užklausų atvejų yra tada, kai suaktyviname Perrašymo modulis.
Papildomi prašymaiTai yra tada, kai sugeneruojamos papildomos užklausos, kurios gali papildyti turinį, pavyzdžiui, kai naudojame modulį add_after_body tai leidžia mums pridėti turinio prie užklausos rezultato.
Error_page block
Blokas error_page Tai taip pat yra vienas iš funkcinių pavyzdžių, kaip galime nustatyti vidines užklausas, pažiūrėkime šį paprastą pavyzdį:
Paveikslėlyje matome, kaip sukonfigūravome savo serverį, kad gavę klaidą generuojančią užklausą, Nginx peradresuoja tiesiai į mūsų parengtus dokumentus, kad klientas nesulauktų šiurkštaus atsakymo.
Dabar, jei norime perrašyti tai, kas išdėstyta aukščiau, ir išvesti į a vidinis prašymas mes galime įgyti tokią formą išsamiau:
Čia matome, kaip mes tai apibrėžėme, kai gavome kodą 404 klaida, Siunčiu jį į tam tikrą vietą, kuri yra klaidų aplankas, bet vėliau mes apibrėžiame, kad gavę užklausą į klaidų aplanką, pateiksime vidinę užklausą, tik tokiu būdu Nginx Galite pasiekti šį turinį, taigi, jei kas nors bandys tai padaryti išoriškai, jis neturės prieigos prie jo.
Tuo baigėme šį vadovėlį, kuriame matėme, kad tinkamas vidinių užklausų naudojimas gali padėti pagerinti mūsų svetainės saugumą, neleidžiant jiems iš išorės pasiekti šių išteklių.