Kas yra serverio scenarijus?

Serverio scenarijų sudarymas yra terminas, pirmiausia naudojamas kalbant apie pasirinktinio turinio teikimą naudojant hiperteksto perdavimo protokolą (HTTP) žiniatinklio serveryje, kai serveris vykdo mažas programas. Šios programos, dažniausiai parašytos scenarijų kalba, vykdomos serverio, kai gaunama kliento užklausa. Priklausomai nuo parametrų, kuriuos klientas pateikė užklausos metu, scenarijus sukuria klientui skirtą tinklalapį. Tokiu būdu sukurti tinklalapiai dažnai vadinami dinaminiais puslapiais. Tai skiriasi nuo kliento scenarijaus, kuris siunčiamas iš serverio užklausančiam klientui ir tada vykdomas.

Pirmieji serverio scenarijų rašymo būdai atsirado siekiant pateikti turinį, kuris yra unikalus užklausą pateikusiam vartotojui, ir sutaupyti laiko, sumažinant hiperteksto žymėjimo kalbos (HTML) dokumentų rankinį redagavimą. Serverio scenarijai dažnai buvo maži, vykdomieji failai, kuriuose buvo komandų, perduodamų operacinei sistemai, serija. Žiniatinklio demonas, programinė įranga, kurioje veikia žiniatinklio serveris, naudotų šiuos apvalkalo scenarijus, kad toliau vykdytų papildomą pagrindiniame kompiuteryje esančią programą. Šis bendrasis metodas buvo apibrėžtas 1993 m. Bendrojo šliuzo sąsajos (CGI) standarte, kurį sukūrė Interneto inžinerijos darbo grupė (IETF). Daugeliu atvejų šie ankstyvieji CGI scenarijai buvo naudojami duomenų bazės atsakymams iš serverio siųsti atgal užklausančiam klientui.

Kai buvo kuriamos interpretuojamos scenarijų kalbos, tokios kaip Perl ir PHP: Hypertext Preprocessor (PHP), serverio pusės scenarijų rašymo metodai taip pat išsivystė. HTTP demonai buvo atnaujinti įtraukiant naudojimo plėtinius, kurie leido šias įvairias scenarijų kalbas iškviesti iš paties žiniatinklio demono, o ne perduoti pagrindinio kompiuterio operacinei sistemai. Su šiuo papildymu į HTML dokumentą gali būti įtraukti scenarijų kalbos bitai. Kai žiniatinklio serveris skaito dokumentą prieš išsiųsdamas jį visame žiniatinklyje, jis patikrina ir vykdo bet kurį dokumente esantį scenarijų.

Kadangi serverio scenarijų iškviestas turinys yra duomenų bazėje, jis gali būti beveik bet koks. Duomenų bazėje saugomas turinys, pvz., produktų aprašymai, kainų svyravimai, tinklaraščio įrašai, vaizdai ir net formatavimas. Taip pat galima įdėti vieną serverio scenarijaus fragmentą į kitą, kai pirmasis scenarijus paima tam tikrus duomenis iš duomenų bazės, bet taip pat iškviečia antrą scenarijų, kuris pasiekia antrinius duomenis. Tai naudinga, pavyzdžiui, pateikiant gana pritaikytą standartinį turinį su papildomu įdėtu turiniu, kuris gali būti jautrus laikui arba dar nežinomas, pvz., komentarus apie tinklaraščio įrašą. Tinklalapio priežiūra apima duomenų atnaujinimą duomenų bazėje, o tai paveiks kiekvieną svetainės puslapį su įtrauktu scenarijumi tiems duomenims iškviesti.

Daugelis serverio scenarijų sudarymo metodų buvo toliau plėtojami į vadinamąsias turinio valdymo sistemas (TVS). PHP yra turbūt dažniausiai šiam tikslui naudojama kalba, veikianti daugelio TVS diegimų centre. Čia vartotojas, valdantis svetainę, kurioje veikia TVS, redaguoja savo HTML dokumentus, įtraukdamas vadinamąsias žymas. Žymos iš esmės yra užuominos TVS, nurodančios, kokį scenarijų įtraukti į dokumentą. Tada TVS galima tinkinti kuriant papildomus scenarijus ir su jais susijusias žymas.