Common Gateway Interface: Skirtumas tarp puslapio versijų

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Ištrintas turinys Pridėtas turinys
Lot-bot-as (aptarimas | indėlis)
S Kai kurių rašybos, skyrybos, wiki ar kitų klaidų taisymas
SieBot (aptarimas | indėlis)
S robotas Keičiama: es:Interfaz de entrada común
Eilutė 25: Eilutė 25:
[[en:Common Gateway Interface]]
[[en:Common Gateway Interface]]
[[eo:CGI]]
[[eo:CGI]]
[[es:Common Gateway Interface]]
[[es:Interfaz de entrada común]]
[[et:CGI]]
[[et:CGI]]
[[fi:CGI]]
[[fi:CGI]]

10:35, 18 lapkričio 2007 versija

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).


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