Ce sunt scripturile CGI și cum îmbunătățesc site-urile?

Ce sunt scripturile CGI și cum îmbunătățesc site-urile? / Programare

CGI standuri pentru Interfața comună a gateway-ului. Este un protocol standard pentru serverele web de a executa programe și de a genera ieșire pentru browserele web Cele mai bune browsere web pentru Windows Cele mai bune browsere web pentru Windows Care este browserul dvs. implicit de web? Chiar dacă suntem răsfățați de alegere, majoritatea dintre noi rămânem la jucătorii mari încercați și testați. Care sunt alternativele mai bune pentru utilizarea resurselor, viteza și securitatea? Citeste mai mult . Programul este denumit un program CGI (sau un script CGI Salvați-vă timpul și efortul prin automatizarea GIMP cu scripturi Salvați timpul și efortul prin automatizarea GIMP cu scripturi Automatizarea acțiunilor cu scripturile Python din GIMP vă poate salva o tona de timp. nu este ușor să începi, dar odată ce știi aceste lucruri de bază, vei fi bine pe drum! Citește mai mult). Se execută în numele serverului web pentru a produce rezultate atunci când o anumită adresă URL este solicitată de browserul web al utilizatorului.

Beneficiile CGI

Un CGI îmbunătățește un site în multe feluri. Pornind de la autentificarea unui utilizator la furnizarea unei aplicații comerciale la scară largă, CGI-urile se află în centrul procesului de a face dinamicul dinamic și interactiv. Următoarele sunt câteva dintre principalele beneficii ale utilizării CGI pentru a îmbunătăți experiența utilizatorului.

  • Personalizat pentru utilizator: Ieșirea poate fi personalizată fiecărui utilizator. De exemplu, un utilizator poate verifica balanțele contului său bancar, care ar putea fi necesar să fie recuperate din baza de date.
  • Alte tipuri de personalizare: Utilizatorul poate utiliza un telefon mobil pentru a accesa site-ul web, iar ieșirea trebuie ajustată pentru rezoluția telefonului mobil.
  • Efectuarea actualizărilor: O actualizare este efectuată ca rezultat al unui formular POST (explicat mai jos). De exemplu, este posibil să vă actualizați starea Facebook.
  • Încărcarea fișierelor: Un fișier încărcat de un utilizator are nevoie de un CGI la sfârșitul serverului pentru a gestiona cererea de încărcare a fișierului pentru a stoca fișierul într-o anumită locație.
  • Generarea de ieșire: În plus față de ieșirea afișată în browser, multe site-uri web oferă forme suplimentare de ieșire, cum ar fi document Word, PDF etc. Unele dintre aceste documente ar putea fi generate în zbor de CGI-uri, cum ar fi factura telefonică sau extrasul cardului de credit.

Servirea fișierelor statice versus CGI-uri

Un fișier HTML 17 Exemple simple de coduri HTML pe care le puteți învăța în 10 minute 17 Exemple simple de exemple de cod HTML puteți afla în 10 minute Dacă cunoașteți următoarele 17 etichete HTML (și celelalte câteva care merg cu ele), veți putea a crea o pagină web de bază de la zero sau tweak codul creat de o aplicație ca ... Citeste mai mult (precum și JavaScript Java vs. JavaScript: Tot ce trebuie să știți Java vs JavaScript: Tot ce trebuie să știți Java și Javascript parts unele lucruri în comune, dar ele sunt mai diferite de ele însele decât ele sunt similare.În acest post, vom explora unele dintre aceste diferențe.Citește mai multe și CSS 10 exemple simple CSS Exemple puteți învăța în 10 minute 10 exemple simple CSS Exemple You Pot să învăț în 10 minute Vom trece peste modul de creare a unei foi de stil inline pentru a vă putea exersa abilitățile de CSS, apoi vom trece la 10 exemple CSS de bază, iar imaginația dvs. este limita! direct de către serverul web. Un program CGI, pe de altă parte, este executat de serverul web atunci când este solicitată o anumită adresă URL. Se utilizează pentru a satisface cererile care necesită acces la informații dinamice, cum ar fi cea care se află într-o bază de date. Un exemplu ar fi autentificarea unui utilizator care să permită accesul: numele de utilizator și parola ar putea fi stocate într-o bază de date și o solicitare de validare a utilizatorului ar trebui să aibă acces la aceste informații. Pentru întreținerea acestei solicitări, serverul web ar executa un program CGI care ar căuta informațiile și va valida utilizatorul.

Configurarea serverelor Web

Un server web rulează un software de tip server HTTP care oferă posibilitatea de a servi fișiere HTML, precum și de a executa programe CGI pentru a genera ieșire în zbor. Software-ul serverului HTTP este configurat de administratorul serverului web pentru a executa programe specifice atunci când sunt solicitate adrese URL care se potrivesc modelelor specifice.

Executarea CGI-urilor

Atunci când browserul unui utilizator face o cerere către o anumită adresă URL, browserul trimite o grămadă de informații, sub forma anteturilor HTTP și, eventual, a corpului HTTP. Printre acestea se numără:

  • Tipul browserului
  • Numele utilizatorului dacă utilizatorul sa logat
  • Toate cookie-urile stocate anterior de serverul web
  • Formați variabile dacă cererea este o solicitare POST

Când un CGI este executat pentru a îndeplini această solicitare, serverul a transmis toate aceste informații programului CGI. CGI poate utiliza unele sau toate aceste informații pentru a face față solicitării și pentru a personaliza ieșirea către utilizator.

Manipularea formularelor POST

O utilizare primară a CGI-urilor este de a procesa formulare HTML.

Un formular HTML este un dispozitiv de interacțiune cu utilizatorul și oferă o varietate de comenzi astfel încât utilizatorul să poată furniza informații. Când utilizatorul face clic pe a A depune (sau ceva similar) din formular, browserul web agregă informațiile din formular și le trimite la adresa URL indicată în formular. Serverul web, la rândul său, invocă în mod tipic un program CGI și trimite toate intrările colectate de la utilizator. Această interacțiune se numește un formular POST, un termen tehnic care indică metoda de trimitere a conținutului formularului la CGI. CGI procesează conținutul formularului și produce un răspuns adecvat care trebuie trimis browserului.

O probă CGI

Următoarele sunt un program de probă CGI scris în Python 5 Motive pentru care programarea Python nu este inutilă 5 motive pentru care programarea Python nu este inutilă Python - Îi place sau o urăsc. S-ar putea chiar să vă mișcați de la un capăt la altul ca un pendul. Indiferent, Python este o limbă greu de interpretat. Citeste mai mult . Acesta poate fi implementat pe un server web, astfel încât să fie accesibil de la un URL similar cu: http://www.example.com/cgi-bin/env.cgi. Când este invocată, CGI raportează toate variabilele pe care le-a primit în mediul său de pe serverul web. Acest lucru este la fel de simplu ca un program CGI poate obține.

#! / usr / bin / python import os imprimare "Tip de conținut: text / simplu \ n" pentru tasta în OS.environ: tasta de imprimare, "=> \ 

Evoluția CGI-urilor

CGI-urile au făcut parte din serverele web încă de la începutul paginii web. Primul server web, serverul NCSA HTTPd Web, a început cu ajutorul suportului pentru deservirea numai a fișierelor statice. Ulterior, a fost recunoscut faptul că executarea unui script ca răspuns la o solicitare de adresare URL a permis serverului web să genereze conținut dinamic și sa născut specificația CGI.

Cele mai vechi programe CGI erau simple scripturi scrise într-o limbă precum Perl, TCL, Shell etc. De asemenea, ar putea fi scrisă într-o limbă compilată, cum ar fi C / C ++, dar acest lucru necesită un pas suplimentar de compilare a programului pentru a crea executabil CGI.

Deoarece CGI-urile au devenit mai complexe, iar utilizatorul cere să crească Crearea interfețelor Web: În cazul în care începeți să creați interfețe Web: De unde să începeți Vă vom arăta cum se descompun interfețele web, apoi subliniați conceptele-cheie, instrumentele și blocurile de construcție necesare fă-te un designer web secol 21. Citește mai mult, sa recunoscut că crearea unui proces separat CGI pentru întreținerea fiecărei solicitări a fost mai degrabă prea greu din punct de vedere al memoriei și al cheltuielilor CPU. Mai ales când serviciul cererii durează mai puțin decât costurile generale ale creării unui nou proces.

În acest moment, serverele web au început să încorporeze interpreți de script complet, astfel încât cererile utilizatorilor ar putea fi tratate separat fir într-un singur proces server web. Acest lucru a îmbunătățit eficiența cererii de întreținere și a redus timpii de răspuns.

Acest lucru a coincis cu sosirea de limbi noi proiectate special pentru web, cum ar fi PHP. Interpretul PHP a început să devină un program CGI în sine. Ca parte a prelucrării cererii, acesta analizează fișierul solicitat pentru directivele PHP și execută comenzile acolo.

Astăzi, pe lângă scripturile CGI, există multe tehnologii utilizate pentru executarea codului pe server ca răspuns la o solicitare.

Utilizați scripturi CGI în orice parte a site-ului web al companiei dvs.? V-ați confruntat cu anumite probleme cu implementarea sau întreținerea de scripturi CGI? Discutați mai jos în comentarii.

Explorați mai multe despre: Dezvoltarea web.