Discovery znanje
/ Knowledge Discovery >> Discovery znanje >> tech >> računalnik >> računalniška programska oprema >>

Kako CGI Scripting Works

jo je napisal v C:
 #include < stdio.h > int main () {printf (" Content-type: text /html \\ n \\ n " ); printf (" < html > \\ n "); printf (" < body > \\ n "); printf (" < h1 > Zdravo! < /h1 > \\ n "); printf (" < /body > \\ n "); printf (" < /html > \\ n "); vrnitev 0;} 

Na mojem spletnem strežniku, sem vstopil v ta program v datoteko simplest.c in nato zberejo z besedami:

 gcc simplest.c -o simplest.cgi 

​​(Glejte Kako C Programiranje dela za podrobnosti o sestavljanju programov C.)

S postavitvijo simplest.cgi v imeniku cgi-bin, je mogoče izvršiti. Kot lahko vidite, vse, da se scenarij pa je ustvariti stran, ki pravi, da "! Hello there " Edini del, ki je nepričakovano je linija, ki pravi:

 printf (" Content-type: text /html \\ n \\ n "); 

Vrstica " Content-type: text /html \\ n \\ n " je poseben del besedila, da mora biti prva stvar, na brskalnik, ki ga koli CGI skript pošlje. Dokler se spomnite, da storiti, da bo vse v redu. Če ste pozabili, bo brskalnik zavrne izhod skripta.

Lahko narediš isto stvar v Perl. Vnesite to PERL kodo v datoteko z imenom simplest.pl:

 #! /usr /bin /perlprint " Content-type:! text /html \\ n \\ n "; print " < html > < body > < h1 > Hello World "; print " < /h1 > < /body > < /html > \\ n "; 

Vpis datoteko v vašem cgi-bin imenik. Na UNIX stroj, lahko pomaga, da tudi tip:

 chmod 755 simplest.pl 

To pove UNIX, da je scenarij izvršljiv.

ste pravkar videli osnovno zamisel CGI scripting. To je res tako preprosto! Program izvaja in njene izhod
se pošlje na brskalnik, ki se imenuje scenarij. Normalno izhod poslana stdout je tisto, kar dobi pošlje brskalniku

Poanta CGI skriptno pa je, da ustvarite dinamične vsebine. - Vsakič, ko se skript izvede, proizvodnja bi morala biti drugačna. Konec koncev, če je izhod enak vsakič, ko zaženete skript, nato pa boste lahko tudi uporabite statične strani. Naslednji program C kaže zelo preprost dinamične vsebine:

 #include < stdio.h > int incrementcount () {FILE * f; int i; f = fopen (" count.txt ", " r + "); če (f!) {spanja (1); f = fopen (" count.txt ", " r + "); če vrne -1 (f!

Page [1] [2] [3] [4] [5] [6] [7] [8] [9]