HTTP variabile header cerere

Cu excepția acelor linii din antetul solicitării HTTP, care sunt deja numite, serverul adaugă prefixul HTTP_ la linii și înlocuiește caracterele "-" cu "_":

HTTP_ACCEPT - Oferirea unei cereri pentru browser-ul serverului calculează în mod normal, informații dintr-un anumit format, și pentru că, el indică în antet cerere Accept: câmp, aici script-ul merge listă ca MIME, care browser-ul este dispus să accepte ca răspuns de la server.







HTTP_USER_AGENT - Browserul trimite de obicei la server și informații despre ei înșiși, astfel bazate pe cunoașterea caracteristicilor și a deficiențelor de browsere specifice, CGI-script-ar putea da informații pentru a reflecta acest lucru. De exemplu, diferite browsere pot sau nu acceptă orice etichete HTML.

Și există aproximativ 30 de persoane.

CGI-script are acces la aceste variabile prin funcții ale sistemului de operare (pe diferite sisteme de operare, acesta este pus în aplicare în moduri diferite), astfel CGI-script primește informații complete despre HTTP-cerere. Și corpul cererii (dacă este, bineînțeles, acolo) merge la scenariul STDIN (flux de intrare standard). Dimensiunea CONTENT_LENGTH octeți.

Acum vom discuta modul în care scriptul CGI ar trebui să trimită informații serverului Web din punctul de vedere al CGI.

Dacă scriptul CGI dorește să trimită ceva înapoi, atunci ar trebui să facă acest lucru după cum urmează. Toate ieșirile ar trebui să fie plasate în scriptul STDOUT. În acest caz, trebuie să existe un antet CGI (CGI-Header). Antetul CGI poate conține următoarele câmpuri:

Tip de conținut: - Trebuie să fie prezent dacă există un organism de răspuns. Definește tipul răspunsului MIME.

Locație: - trebuie să conțină adresa URL a resursei la care este redirecționată solicitarea, de regulă, în acest caz nu este indicat nimic (deoarece cererea este redirecționată către un alt server)

Stare: - Conține codul de ieșire al scriptului CGI. Dacă nu este specificat atunci se presupune 200 Ok

De exemplu: Status: 404 Nu a fost găsit

După antetul CGI, un șir gol este trimis către STDOUT, care separă antetul de corpul de răspuns. După trimiterea corpului real al răspunsului al cărui tip a fost specificat în tipul de conținut (imagine, text HTML sau altul).







Web-server primeste prin STDOUT informatiile primite de la formularele CGI-script pe baza raspunsului HTTP care este trimis catre client (browser).

Trebuie spus că scriptul CGI poate genera un răspuns complet HTTP fără participarea serverului Web. Astfel de scripturi CGI se numesc Anteturi neparsate. și cum ar trebui să înceapă numele lor cu un prefix - "nph-" sau pentru servere Web orientate pe Windows, prima linie care va fi plasată în STDOUT ar trebui să fie "HTTP / 1.0". și anume versiunea protocolului HTTP, atunci serverul va presupune că acest script CGI va fi un script CGI nph.

Un script CGI poate transmite parametrii. Sintaxa acestui lucru este: ?Param1Param2 = ValoareaParam + 2b% 20% 5B% 5C% 5D% 5E. în cazul în care. - înseamnă că date suplimentare sunt tratate ca parametri; - acest simbol separă parametrii unul de celălalt; % - după acest caracter vine codul de 16 caractere, acest lucru este necesar, deoarece nu toate caracterele pot fi folosite pe linia de comandă, iar cu% puteți specifica absolut orice caracter; + - specifică un spațiu (spațiile nu pot fi utilizate explicit pe linia de comandă); Parametrii pot fi împărțiți în două părți după nume și valoare folosind semnul egal (pentru comoditate). Parametrii, în funcție de metoda de solicitare HTTP, sunt transmise scriptului CGI (când GET este atașat la linia de comandă și când POST este primit ca corp al cererii pentru scriptul STDIN). Utilizarea parametrilor va fi descrisă mai detaliat când vine vorba de formularele HTML.

Un exemplu de scenariu CGI (am scris un exemplu în Pascal pentru că cred că aproape toți sunt familiarizați cu Pascal).

Compilați acest program (utilizând compilatorul pentru sistemul de operare în care acesta va funcționa). Puneți-l în directorul / cgi-bin al serverului dvs. Încercați să începeți (de la browser specificând adresa URL a acestuia). Vă va trimite un salut Hello World.

Acum, să ne uităm la unele aplicații ale scenariilor CGI.

Mai întâi, CGI este utilizat atunci când procesează formulare HTML. De asemenea, pentru a crea contoare de vizită, cărți de oaspeți și sisteme de chat.

Folosind CGI, puteți crea animații

De fapt, puteți crea animații pe pagini Web în zeci de moduri. Vom vedea cum se poate face acest lucru cu CGI. Scrieți un program care afișează o secvență de mai multe imagini (pe același principiu ca și GIF animat) pentru viteza maximă va folosi NPH-CGI - script, și de a folosi MIME c înlocuind multe pagini pagina anterioară. Cifrele ar trebui să fie stocate cu aceleași nume ca în matricea de fișiere a acestui program.

Compilați acest program (utilizând compilatorul pentru sistemul de operare în care acesta va funcționa). Puneți-l în directorul / cgi-bin al serverului dvs. Apoi, în documentul HTML, adăugați următoarea etichetă:

Imagini ISMAP

Să luăm în considerare o aplicație suplimentară a CGI - este imagini ismap. Să presupunem că în documentul dvs. HTML există următoarea linie:

Ei bine, cum să-l folosiți depinde doar de imaginația voastră.

ȘTIRI ALE FORUMULUI
Cavalerii teoriei eterului







Trimiteți-le prietenilor: