Quali sono gli script CGI e in che modo migliorano i siti web?

Quali sono gli script CGI e in che modo migliorano i siti web? / Programmazione

CGI sta per Interfaccia comune del gateway. È un protocollo standard per i server Web per eseguire programmi e generare output per i browser Web. I migliori browser Web per Windows I migliori browser Web per Windows Qual è il browser Web predefinito? Anche se abbiamo solo l'imbarazzo della scelta, la maggior parte di noi si attacca ai giocatori più importanti provati e testati. Quali sono le alternative migliori per l'uso delle risorse, la velocità e la sicurezza? Leggi di più . Il programma è indicato come un programma CGI (o uno script CGI Risparmia tempo e fatica automatizzando GIMP con gli script Risparmia tempo e fatica automatizzando GIMP con gli script L'automazione delle azioni con gli script Python in GIMP può farti risparmiare un sacco di tempo. non è facile iniziare, ma una volta che conosci queste basi, sarai sulla buona strada! Per saperne di più). Esegue per conto del server Web per produrre output quando un particolare URL viene richiesto dal browser web dell'utente.

Benefici dei CGI

Un CGI migliora un sito Web in molti modi. A partire dall'autenticazione di un utente alla fornitura di un'applicazione per lo shopping su vasta scala, i CGI sono al centro del rendere il Web dinamico e interattivo. Di seguito sono riportati alcuni dei principali vantaggi dell'utilizzo di CGI per migliorare l'esperienza dell'utente.

  • Personalizzato per l'utente: L'output può essere personalizzato per ciascun utente. Ad esempio, un utente potrebbe verificare i saldi dei conti bancari, che potrebbero dover essere recuperati dal database.
  • Altri tipi di personalizzazione: L'utente può utilizzare un telefono cellulare per accedere al sito Web e l'output deve essere regolato per la risoluzione del telefono cellulare.
  • Fare aggiornamenti: Un aggiornamento viene eseguito come risultato di un modulo POST (spiegato di seguito). Ad esempio, potresti aggiornare il tuo stato di Facebook.
  • Caricamento dei file: Un file caricato da un utente ha bisogno di un CGI sul server per gestire la richiesta di upload del file per archiviare il file in una particolare posizione.
  • Generazione di output: Oltre all'output visualizzato nel browser, molti siti Web offrono forme di output aggiuntive, come documenti Word, PDF, ecc. Alcuni di questi documenti potrebbero dover essere generati al volo dai CGI, come la bolletta telefonica o l'estratto conto della carta di credito..

Serve file statici contro CGI

Un file HTML 17 Esempi di codice HTML semplici che puoi imparare in 10 minuti 17 Esempi di codice HTML semplici che puoi imparare in 10 minuti Se conosci i seguenti 17 tag HTML (e alcuni extra che li accompagnano), sarai in grado di creare una pagina web di base da zero o modificare il codice creato da un'app come ... Per saperne di più (così come JavaScript Java vs JavaScript: Tutto quello che c'è da sapere Java vs JavaScript: Tutto quello che c'è da sapere Java e Javascript condividono alcune cose in comuni, ma sono più diversi tra loro rispetto a quelli che sono simili.In questo post, esploreremo alcune di queste differenze Leggi di più e CSS 10 Esempi di codici CSS semplici che puoi imparare in 10 minuti 10 Esempi di codici CSS semplici Puoi imparare in 10 minuti Vedremo come creare un foglio di stile in linea in modo da poter mettere in pratica le tue abilità CSS, quindi passeremo a 10 esempi CSS di base, da lì la tua immaginazione è il limite! direttamente dal server web. Un programma CGI, d'altra parte, viene eseguito dal server Web quando viene richiesto un particolare URL. Viene utilizzato per soddisfare le richieste che richiedono l'accesso a informazioni dinamiche, come quelle che risiedono in un database. Un esempio potrebbe essere l'autenticazione di un utente per consentire l'accesso: il nome utente e la password potrebbero essere memorizzati in un database e una richiesta per convalidare l'utente dovrebbe accedere a queste informazioni. Per soddisfare questa richiesta, il server Web eseguiva un programma CGI che cercava le informazioni e convalidava l'utente.

Configurazione dei server Web

Un server Web esegue un software server HTTP che fornisce la possibilità di fornire file HTML, oltre a eseguire programmi CGI per generare output al volo. Il software del server HTTP viene configurato dall'amministratore del server Web per eseguire programmi specifici quando vengono richiesti URL che corrispondono a modelli specifici.

Esecuzione di CGI

Quando il browser di un utente effettua una richiesta a un particolare URL, il browser invia un sacco di informazioni, sotto forma di intestazioni HTTP e probabilmente il corpo HTTP. Alcuni di questi possono includere:

  • Il tipo di browser
  • Il nome dell'utente se l'utente ha effettuato l'accesso
  • Qualsiasi cookie precedentemente memorizzato dal server web
  • Formare variabili se la richiesta è una richiesta POST

Quando un CGI viene eseguito per soddisfare questa richiesta, il server ha trasmesso tutte queste informazioni al programma CGI. Il CGI può utilizzare alcune o tutte queste informazioni per gestire la richiesta e personalizzare l'output per l'utente.

Gestione dei moduli POST

Un uso principale dei CGI è l'elaborazione dei moduli HTML.

Un modulo HTML è un dispositivo di interazione dell'utente e fornisce una varietà di controlli in modo che l'utente possa fornire input. Quando l'utente fa clic su Sottoscrivi pulsante (o qualcosa di simile) sul modulo, il browser Web aggrega le informazioni nel modulo e lo invia all'URL di destinazione indicato nel modulo. Il server web, a sua volta, in genere richiama un programma CGI e invia tutti gli input raccolti dall'utente. Questa interazione è denominata POST, un termine tecnico che indica il metodo di invio del contenuto del modulo al CGI. La CGI elabora il contenuto del modulo e produce una risposta adeguata da inviare al browser.

Un campione di CGI

Quello che segue è un esempio di programma CGI scritto in Python 5 Ragioni per cui la programmazione Python non è inutile 5 motivi per cui Python Programming non è inutile Python - Lo ami o lo odi. Potresti anche oscillare da un'estremità all'altra come un pendolo. Indipendentemente da ciò, Python è un linguaggio per il quale è difficile essere ambigui. Leggi di più . Può essere distribuito su un server Web in modo che sia accessibile da un URL simile a: http://www.example.com/cgi-bin/env.cgi. Quando viene richiamato, il CGI riporta tutte le variabili ricevute nel suo ambiente dal server web. Questo è tanto semplice quanto può ottenere un programma CGI.

#! / usr / bin / python import os stampa "Content-type: text / plain \ n" per la chiave in os.environ: print key, "=> \" ", os.environ [chiave]," \ "" 

L'evoluzione dei CGI

I CGI sono stati una parte dei server web fin quasi dall'inizio del web. Il primo server Web in assoluto, il server Web HTTPd NCSA, è stato avviato con il supporto solo per la pubblicazione di file statici. Successivamente, è stato riconosciuto che l'esecuzione di uno script in risposta a una richiesta di URL ha consentito al server Web di generare contenuto dinamico e la specifica CGI è nata.

I primi programmi CGI erano semplici script scritti in un linguaggio come Perl, TCL, Shell, ecc. Poteva anche essere scritto in un linguaggio compilato come C / C ++, ma ciò richiedeva un ulteriore passaggio per compilare il programma per creare l'eseguibile CGI.

Poiché i CGI diventano più complessi e le richieste degli utenti aumentano Creazione di interfacce Web: da dove cominciare Creare interfacce Web: da dove iniziare Vi mostreremo come si rompono le interfacce web, quindi indicare i concetti chiave, gli strumenti e i blocchi necessari per fai di te un web designer del 21 ° secolo. Per saperne di più, è stato riconosciuto che la creazione di un processo CGI separato per la manutenzione di ciascuna richiesta era piuttosto pesante in termini di memoria e sovraccarico della CPU. Soprattutto quando la manutenzione della richiesta richiede meno tempo rispetto al sovraccarico di creazione di un nuovo processo.

A questo punto, i server Web iniziarono a incorporare interpreti di script in piena regola in modo che le richieste degli utenti potessero essere gestite separatamente filo all'interno di un singolo processo del server web. Ciò ha migliorato l'efficienza del servizio di richiesta e ha ridotto i tempi di risposta.

Questo ha coinciso con l'arrivo di nuovi linguaggi specificamente progettati per il web, come PHP. L'interprete PHP ha iniziato la sua vita come un programma CGI stesso. Come parte dell'elaborazione della richiesta, analizza il file richiesto per le direttive PHP ed esegue i comandi lì dentro.

Oggi, oltre agli script CGI, ci sono molte tecnologie utilizzate per eseguire codice sul server in risposta a una richiesta.

Stai usando script CGI in qualsiasi parte del sito web della tua azienda? Hai affrontato problemi particolari con la distribuzione o il mantenimento di script CGI? Discuti di seguito nei commenti.

Scopri di più su: Sviluppo Web.