Mis on serveripoolne skriptimine?

Serveripoolne skriptimine on termin, mida kasutatakse peamiselt kohandatud sisu teenindamiseks veebiserveris hüperteksti edastusprotokolli (HTTP) kaudu, kui server käivitab väikeseid programme. Need programmid, mis on tavaliselt kirjutatud skriptikeeles, käivitab server kliendi päringu saabumisel. Sõltuvalt kliendi poolt päringu ajal antud parameetritest genereerib skript seejärel kliendi jaoks veebilehe. Sel viisil loodud veebilehti nimetatakse sageli dünaamilisteks lehtedeks. See on vastupidine kliendipoolsele skriptile, mis saadetakse serverist taotlevale kliendile ja seejärel käivitatakse.

Esimesed serveripoolsed skriptimistehnikad tekkisid selleks, et edastada päringu esitanud kasutajale ainulaadset sisu ning säästa aega, vähendades hüperteksti märgistuskeele (HTML) dokumentide käsitsi redigeerimist. Serveripoolsed skriptid olid sageli väikesed käivitatavad failid, mis sisaldasid operatsioonisüsteemile edastatavaid käske. Veebideemon, veebiserverit käitav tarkvara, kasutaks neid kestaskripte hostarvutis asuva lisaprogrammi edasiseks käivitamiseks. See üldine tehnika määratleti seejärel 1993. aastal Interneti-tehnoloogia töörühma (IETF) poolt välja töötatud CGI (common gateway interface) standardis. Enamikul juhtudel kasutati neid varajasi CGI skripte andmebaasi vastuste saatmiseks serverist päringu esitanud kliendile.

Tõlgendatud skriptimiskeelte (nt Perl ja PHP: Hypertext Preprocessor (PHP)) arenedes arenesid ka serveripoolsed skriptimismeetodid. HTTP-deemoneid värskendati, et hõlmata kasutuslaiendeid, mis võimaldasid neid erinevaid skriptikeeli kutsuda veebideemonist endast, selle asemel, et neid hosti operatsioonisüsteemile edastada. Selle lisamisega saab HTML-dokumenti lisada skriptikeele bitte. Kuna veebiserver loeb dokumendi läbi enne selle veebis väljasaatmist, kontrollib see dokumendis mis tahes skripti ja käivitab selle.

Kuna serveripoolse skripti abil välja kutsutud sisu asub andmebaasis, võib see olla praktiliselt ükskõik milline. Sisu, nagu tootekirjeldused, hinnaerinevused, ajaveebi kirjed, pildid ja isegi vormingud, salvestatakse andmebaasi. Samuti on võimalik pesastada üks serveripoolne skriptilõik teise sisse, kus esimene skript haarab andmebaasist teatud andmed, kuid kutsub välja ka teise skripti, mis pääseb juurde sekundaarsetele andmetele. See on kasulik näiteks mõne üsna kohandatud standardsisu edastamisel koos täiendava pesastatud sisuga, mis võib olla ajatundlik või veel tundmatu, näiteks ajaveebi kirje kommentaarid. Veebisaidi hooldus hõlmab seega andmebaasis olevate andmete värskendamist, mis seejärel mõjutab kõiki veebisaidi lehti koos kaasatud skriptiga nende andmete väljakutsumiseks.

Paljud serveripoolsed skriptimistehnikad on edasi arendatud sisuhaldussüsteemideks (CMS). PHP on sellel eesmärgil ilmselt kõige sagedamini kasutatav keel, mis töötab paljude CMS-i juurutuste tuumas. Siin redigeerib kasutaja, kes haldab CMS-is töötavat veebisaiti, oma HTML-dokumente, et lisada nn sildid. Sildid on sisuliselt näpunäited CMS-ile, et öelda, milline skript dokumenti lisada. Seejärel saab CMS-i kohandada, luues täiendavaid skripte ja nendega seotud silte.