Documente Academic
Documente Profesional
Documente Cultură
CATEDRA INFORMATICĂ I
LABORATOR NR. 11
Obiect: Proiectarea retea de calculatoare
TEMA: STANDARTUL CGI
Grupa: R-1741
Elev: Lefter Veaceslav
Profesor: Petru Arcan
CHISINAU 2021
CUPRINS
Introducere
Instrumente necesare
Alegeri de proiectare
VLAN
LAN Switch
Clasa de IP
Topologia
Standartul CGI
Common Gateway Interface (CGI) oferă middleware între servere WWW și baze de date
externe și surse de informare. World Wide Web Consortium (W3C) a definit Common Gateway
Interface (CGI) și a definit, de asemenea, modul în care un program interacționează cu un server
HTTP Hyper Text Transfer Protocol (HTTP). Serverul Web transmite de obicei informațiile
despre formular către un mic program de aplicație care procesează datele și poate trimite înapoi
un mesaj de confirmare. Acest proces sau convenție pentru trecerea datelor înainte și înapoi
între server și aplicație se numește interfața de gateway comună (CGI).
Caracteristicile CGI:
Avantajele CGI:
Sarcinile avansate sunt în prezent mult mai ușor de realizat în CGI decât în Java.
Este întotdeauna mai ușor să folosiți codul deja scris decât să scrieți al dvs.
CGI specifică faptul că programele pot fi scrise în orice limbă și pe orice platformă, atâta
timp cât sunt conforme cu specificațiile.
Contoare bazate pe CGI și cod CGI pentru a efectua sarcini simple sunt disponibile din
abundență.
Dezavantajele CGI:
Un server web permite proprietarului său să configureze ce adrese URL vor fi tratate cu ajutorul
acestor scripturi CGI.
Exemplu.
Următorul program Perl prezintă toate variabilele de mediu transmise de serverul Web:
#!/usr/bin/env perl
=head1 DESCRIPTION
=cut
print "Content-Type: text/plain\n\n";
COMSPEC="C:\Windows\system32\cmd.exe"
DOCUMENT_ROOT="C:/Program Files (x86)/Apache Software
Foundation/Apache2.4/htdocs"
GATEWAY_INTERFACE="CGI/1.1"
HOME="/home/SYSTEM"
HTTP_ACCEPT="text/html,application/xhtml+xml,application/xml;q=0.9,*
/*;q=0.8"
HTTP_ACCEPT_CHARSET="ISO-8859-1,utf-8;q=0.7,*;q=0.7"
HTTP_ACCEPT_ENCODING="gzip, deflate, br"
HTTP_ACCEPT_LANGUAGE="en-us,en;q=0.5"
HTTP_CONNECTION="keep-alive"
HTTP_HOST="example.com"
HTTP_USER_AGENT="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:67.0)
Gecko/20100101 Firefox/67.0"
PATH="/home/SYSTEM/bin:/bin:/cygdrive/c/progra~2/php:/cygdrive/c/win
dows/system32:..."
PATHEXT=".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC"
PATH_INFO="/foo/bar"
PATH_TRANSLATED="C:\Program Files (x86)\Apache Software
Foundation\Apache2.4\htdocs\foo\bar"
QUERY_STRING="var1=value1&var2=with%20percent%20encoding"
REMOTE_ADDR="127.0.0.1"
REMOTE_PORT="63555"
REQUEST_METHOD="GET"
REQUEST_URI="/cgi-
bin/printenv.pl/foo/bar?var1=value1&var2=with%20percent%20encoding"
SCRIPT_FILENAME="C:/Program Files (x86)/Apache Software
Foundation/Apache2.4/cgi-bin/printenv.pl"
SCRIPT_NAME="/cgi-bin/printenv.pl"
SERVER_ADDR="127.0.0.1"
SERVER_ADMIN="(server admin's email address)"
SERVER_NAME="127.0.0.1"
SERVER_PORT="80"
SERVER_PROTOCOL="HTTP/1.1"
SERVER_SIGNATURE=""
SERVER_SOFTWARE="Apache/2.4.39 (Win32) PHP/7.3.7"
SYSTEMROOT="C:\Windows"
TERM="cygwin"
WINDIR="C:\Windows"
Unele dintre aceste variabile, dar nu toate, sunt definite de standardul CGI. Unele, cum ar fi
PATH_INFO, QUERY_STRING și cele care încep cu HTTP_, transmit informații de la
solicitarea HTTP.
Variabile specific server-ului
Programul returnează rezultatul pe serverul Web sub forma unei ieșiri standard, începând cu un
antet și o linie necompletată .
Antetul este codat în același mod ca un antet HTTP și trebuie să includă tipul MIME al
documentului returnat. Anteturile, completate de serverul Web, sunt în general transmise cu
răspunsul înapoi către utilizator
Webografie
https://www.whoishostingthis.com/compare/cgi-access/variables/
https://en.wikipedia.org/wiki/Common_Gateway_Interface
https://docstore.mik.ua/orelly/linux/cgi/ch03_01.htm