Interretaj dokumentoj generale estas en HTML-formato. HTML estas bona por pasiva legado de tekstoj kaj spektado de fotoj, sed gi ne suficas por pli komplikaj taskoj, ekzemple, serciloj, gastlibroj, enketiloj, ktp. Por efektivigi tiajn aferojn en interreta pago, oni bezonas programon kiu funkcias ce la interreta servilo (servokomputilo), plenumas sian taskon, kaj dinamike generas HTML-pagojn por sendi al la klienta komputilo.

Tia programo nomigas CGI-programo. CGI estas mallongigo de la angla de Common Gateway Interface kiu tradukeblas per 'Komuna Kluza Interfaco'. CGI ne estas programlingvo; gi fakte estas normo kiu difinas la dialogon inter serviloj kaj foliumiloj (legiloj por TTT). Oni povas teorie skribi CGI-programon per iu ajn programlingvo, sed plejofte oni uzas PERL-on.

Jen ekzemplo de CGI-programo, mia gastlibro:

http://www4.vc-net.ne.jp/~klivo/cgi-bin/gastlibro.cgi

Bonvolu viziti la gastlibron kaj reveni.

La dosiero 'gastlibro.cgi' estas programo skribita per PERL. Kiam foliumilo aliras la adreson, la servilo aktivigas PERL-interpretilon, kiu legas kaj plenumas la programon.

Ce la supro de la gastlibro estas skatolo por elekti la supersignan normojn, kaj butonon repentri la pagon. Ankau, la dato kaj horo montrigas ce la supro. Pli sube estas tekst-kampoj por entajpi nomon kaj mesagon, kaj butonoj por kontroli la aspekton kaj sendi la mesagon.

Kiam vizitanto premas sur 'Sendu', la gastlibro-programo skribas la mesajon al dosiero ce la servilo, kaj resendas HTML-kodojn por montri la pagon denove, kun la nova mesago. Ne ekzistas dosiero nomata gastlibro.htm. La CGI-programo dinamike generas HTML-kodojn kaj elsendas ilin.

Multaj neprofesiuloj lernas HTML-on kaj kreas belajn hejmpagojn per gi. Por krei CGI-programon, oni devas esti iom sperta programisto. Sed neprofesiuloj kapablas uzi CGI-programojn kreitajn de aliaj. Estas multaj bonaj senpagaj programoj haveblaj. (Mia gastlibro estas senpaga. Bonvolu kontakti min se vi volas havi gin.)

Sed, por sukcese enmeti CGI-programon, ne estas tiom facile kiom por hejmpago. Por tiuj kiuj deziras defion, mi donos iom da helpo.

Unue, oni devas kontroli cu la ISP (Interreta Servo-Provizanto) kiun oni uzas permesas al klientoj enmeti CGI-programojn. Iuj ne permesas, car fusa CGI-programo povus paneigi la servilon.

Ni supozu ke via servo-provizanto permesas CGI-programojn. Sekvanta demando estas 'kie?' Ce mia retejo estas subdosierujo kun la nomo 'cgi-bin'. ('Bin' estas mallongigo de binary (duuma). Gi indikas dosierujon en kiu oni enmetas programojn.)

Oni povas sendi CGI-programon al la retservilo per FTP-programon. Se vi sendos CGI-programon verkitan per PERL, bonvolu uzi tekstan regimon, car PERL-programo estas teksta dosiero.

Post sendado de la programo, kaj aliaj eventuale necesaj dosieroj al la cgi-bin dosierujo, oni devas gustigi la permesojn. Estas mallonga priskribo de dosieraj permesoj ci tie.

Al Indekso