CGI

Straipsnis iš Enciklopedijos Lietuvai ir Pasauliui (ELIP).

CGI (Common Gateway Interface) – protokolas, apibrėžiantis, kaip turi bendrauti WWW serveris ir jo vykdomos programos, skirtos iš naršyklės gautai informacijai apdoroti ir/arba dinaminiams puslapiams generuoti.

CGI buvo sugalvotas 1993 ir realizuotas viename iš pirmųjų WWW serverių – NCSA HTTPd. Iš naršyklės gauta informacija į apdorojimo programą perduodama panaudojant aplinkos kintamuosius (išskyrus HTTP POST metodu pateikiamus duomenis į standartinę įvestį). Kiekvienai užklausai apdoroti kuriamas naujas procesas.

CGI patogus tuo, kad:

  • konkrečios taikymo logikos nereikia tiesiogiai integruoti į WWW serveryje esančios svetainės išeities kodą – dėl kiekvieno pakeitimo nereikia perkompiliuoti ir perkrauti viso WWW serverio;
  • taikymo programos gali būti parašytos bet kokia kalba, įskaitant skriptų rašymo kalbas; būtent skriptų kalbomis (perl, php, sh) buvo sukurta daugelis CGI programų;
  • dauguma WWW serverių palaiko šį protokolą, todėl CGI programas galima naudoti su skirtingais WWW serveriais;
  • taikymo programos gali būti vykdomos kitomis teisėmis nei pats WWW serveris, taip pagerinant visos sistemos saugumą.

CGI trūkumai:

  • sparta – kadangi kiekviena užklausa apdorojama atskiro proceso, serverio resursai yra išnaudojami nepakankamai.

Spartos problema sprendžiama dviem būdais:

  • integruojant skriptų kalbų interpretatorius į WWW serverius (mod php, mod perl);
  • taikymo programą paleidžiant kaip paslaugą, o užklausų duomenis ir sugeneruotus tinklalapius perduodant tarp WWW serverio ir CGI programos socket'u (FastCGI).


 Crystal 128 mymac.png  Šiame straipsnyje naudojami diskutuotini terminai.
Daugiau apie kompiuterinius terminus skaitykite žodynėlyje.


Sudarytojai, rašytojai ir redaktoriai

Kitur naudojant ar cituojant šį straipsnį, būtina nurodyti jo sumanytojus, sudarytojus, rašytojus ir redaktorius.
  • Vitas Povilaitis – autorius – 100% (+2995-0=2995 wiki spaudos ženklai).