Un server HTTP transfera informatii unui scenariu CGI utilizand argumente de linie de comanda si variabile de mediu



Un server HTTP transfera informatii unui scenariu CGI utilizand argumente de linie de comanda si variabile de mediu. Serverul atribuie valori variabilelor de mediu cand executa un scenariu. In continuare iti prezentam cele mai importante dintre aceste variabile. Pentru cele mai multe dintre ele iti prezentam chiar valorile avute de pagina, respectiv serverul nostru.

Variabila AUTH_TYPE

Variabila AUTH_TYPE este folosita pentru autentificarea unui utilizator care incearca sa obtina acces la un scenariu. Daca serverul este configurat pentru a permite autentificarea utilizatorilor, utilizatorul care incearca sa obtina aces la un scenariu CGI trebuie sa furnizeze un nume de utilizator si o parola valida.



Exemplu: AUTH_TYPE = Basic

Variabila CONTENT_LENGTH

Variabila este folosita pentru a determina numarul exact de octeti continut in daele atasate. De exemplu daca o interogare (query) contine un document de 1024 de octeti, valoarea variabilei CONTENT_LENGTH va fi:

Exemplu: CONTENT_LENGTH = 1024

Variabila CONTENT_TYPE

Scenariile CGI utilizeaza variabila de mediu CONTENT_TYPE pentru interogari care au atasate informatii, de exemplu o operatie HTTP de tip POST. Informatia continuta specifica tipul atasamentelor (MIME tip/subtip).

Exemplu: CONTENT_TYPE = text/html

Variabila GATEWAY_INTERFACE

Scenariile CGI utilizeaza variabila de mediu GATEWAY_INTERFACE pentru a determina numarul de revizie al specificatiei CGI cu care lucreaza serverul Web. Formatul numarului de revizie al specificatiei CGI este: CGI/numar revizie. 49526vtj68shs1t

Exemplu: GATEWAY_INTERFACE = CGI/1.1

Variabila PATH_INFO

Variabila PATH_INFO poate fi utilizata pentru a obtine numele de cale virtuala al scenariului.

Exemplu: PATH_INFO = programare/cgi_variabile.php3

Variabila PATH_TRANSLATED

Variabila PATH_TRANSLATED poate fi utilizata pentru a obtine numele complet de cale al scenariului.

Exemplu: PATH_TRANSLATED =

Variabila QUERY_STRING

Scenariile CGI utilizeaza variabila QUERY_STRING pentru a primi informatii de tip text care urmeaza dupa caracterul semnul intrebarii (?) in URL-ul specificat de utilizator pentru lansarea scenariului. Serverul va inlocui toate caracterele speciale cu caracterele "%aa" ude "aa" este o cifra in baza 10, iar spatiul il va inlocui cu "+". Deci scenariul trebuie sa contina instructiuni pentru decodarea sirului de caractere. De exemplu, pentru adresa URL https://www.resurse.com/feedback.php3?nume=Viorel+Popescu, valoarea variabilei de mediu va fi:

Exemplu: QUERY_STRING = nume=Viorel+Popescu

Variabila REMOTE_ADDR

Folosind variabila REMOTE_ADDR un scenariu CGI poate afla adresa IP a unui browser care efectueaza o cerere. De exemplu, adresa ta IP este: th526v9468shhs

Exemplu: REMOTE_ADDR = 213.233.80.185

Variabila REMOTE_HOST

Folosind variabila REMOTE_HOST un scenariu CGI poate afla numele unei gazde care efectueaza o cerere.

Exemplu: REMOTE_HOST = resurse.com

Variabila REQUEST_METHOD

Folosind variabila REQUEST_METHOD un scenariu CGI poate afla tipul de cerere HTTP pe care browser-ul a trimis-o serverului pentru apelarea unui scenariu, de exemplu GET, HEAD sau POST.

Exemplu: REQUEST_METHOD = GET

Variabila SCRIPT_NAME

Scenariile CGI folosesc variabila SCRIPT_NAME pentru a determina calea virtuala catre scenariul care va fi rulat pe server.

Exemplu: SCRIPT_NAME = /programare/cgi_variabile.php3

Variabila SERVER_NAME

Folosind variabila SERVER_NAME se poate determina numele de gazda al unui server Web, numele unui domeniu sau o adresa IP.

Exemplu: SERVER_NAME = www.resurse.com

Variabila SERVER_PORT

Folosind variabila SERVER_PORT se poate afla numarul portului utilizat de browser pentru conectarea la serverul Web.

Exemplu: SERVER_PORT = 80

Variabila SERVER_PROTOCOL

Folosind variabila SERVER_PROTOCOL se poate afla numele si numarul de revizie al protocolului utilizat de browser pentru a trimite o cerere catre serverul Web.

Exemplu: SERVER_PROTOCOL = HTTP/1.1

Variabila SERVER_SOFTWARE

Folosind variabila SERVER_SERVER se poate afla numele si numarul de revizie al serverului de Web folosit.

Exemplu: SERVER_SOFTWARE = Apache/1.3.29 (Unix) mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 FrontPage/5.0.2.2634 mod_ssl/2.8.16 OpenSSL/0.9.7c PHP-CGI/0.1b

Variabila HTTP_USER_AGENT

Folosind variabila HTTP_USER_AGENT se poate afla numele si versiunea browser-ului folosit de client.

Exemplu: HTTP_USER_AGENT = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)