Che cos'è Common Gateway Interface: funzionamento e le sue applicazioni

Prova Il Nostro Strumento Per Eliminare I Problemi





Vuoi sapere come i browser ci ottengono informazioni in modo così rapido e istantaneo? Ecco l'articolo che spiega il funzionamento di CGI, vantaggi e svantaggi. Common Gateway Interface (CGI) è un insieme di standard utilizzati per l'esecuzione di script e programmi su un server web. Poiché CGI è un'interfaccia standard, la comunicazione tra il server web e il browser web del client segue regole specificate. In altre parole, Common Gateway Interface funge da middleware tra i server WWW e i database esterni e le fonti di informazioni. Il CGI è stato descritto dal consorzio WWW, che ha anche descritto il modo in cui il programma interagisce con un server HTTP (HyperText Transfer Protocol). Gli script vengono scritti in PHP e ASP ed elaborati sul server web prima che la pagina venga caricata e il risultato venga inviato al browser del client.

Cos'è Common Gateway Interface?

La Common Gateway Interface (CGI) è descritta come un insieme di regole per lo scambio di informazioni tra un web server e uno script personalizzato. Il CGI è uno dei modi più comuni per i server Web di interagire con gli utenti inviando i dati. I linguaggi di programmazione utilizzati possono essere C, C ++, Java, Perl, Python o VB (Visual Basic).




Diverse pagine HTML sono costituite da moduli, che utilizzano programmi CGI per elaborare i dati disponibili nei moduli. Gli script o i programmi sono considerati un metodo alternativo utilizzato per fornire feedback agli utenti Web, mentre questi funzionano dalla macchina dell'utente anziché dal server Web e fanno uso di programmi come Java Script, applet Java o controlli ActiveX. Queste varie tecnologie nel loro insieme sono note come soluzioni lato client e l'uso di CGI è noto come soluzioni lato server poiché l'elaborazione proviene dal server web.

Come funziona Common Gateway Interface

Il seguente diagramma del gateway comune aiuta a capire come funziona CGI quando un utente fa clic su un collegamento ipertestuale per cercare e navigare in qualsiasi pagina web. Un browser web che opera su una macchina client utilizza il protocollo HTTP (HyperText Transfer Protocol) per scambiare informazioni con un server web. Il programma CGI risiede sullo stesso sistema in cui è presente il webserver e operano dallo stesso sistema.



Common-gateway-interface-working

common-gateway-interface-working

In base al tipo di richiesta ricevuta dal browser, il server Web tenta di fornire il documento dal proprio file system del documento o di eseguire un programma CGI. Di seguito sono riportati una serie di eventi per creare un documento HTML utilizzando script CGI:

  • Un utente richiede il server Web HTTP e richiede l'URL. L'utente può anche digitare l'URL nella finestra del percorso del browser, che può essere un collegamento ipertestuale o specificato come tag HTML.
  • Il server web analizzerà l'URL e cercherà il nome del file. In caso contrario, attiva il programma gateway menzionato nell'URL e invia i parametri al programma tramite l'URL
  • Il gateway Common Gateway Interface elabora le informazioni richieste e invia file / testo HTML al server web. Inoltre, il server aggiunge l'intestazione MIME e invia il testo HTML al browser.
  • Prendendo il risultato da un server web, il browser web visualizza il documento ricevuto o un messaggio di errore.
    Caratteristiche di CGI
  • CGI viene utilizzato per creare semplici script di shell e applicazioni interattive
  • Sono ben definiti con una serie di regole
  • CGI è scritto utilizzando semplici linguaggi di programmazione come Perl, C
  • CGI è una tecnologia che si interfaccia facilmente con l'HTML.
  • CGI è altamente compatibile con i browser esistenti.

Vantaggi

  • Il linguaggio Common Gateway Interface deve essere conforme alle specifiche e quindi può essere scritto in qualsiasi linguaggio di programmazione.
  • CGI ci consente di utilizzare il codice già creato e gli utenti possono evitare di scrivere nuovamente il proprio codice.
  • È semplice e sicuro poiché le applicazioni operano sul server.
  • Le funzioni avanzate sono molto più semplici se eseguite in CGI che in Java.
  • È veloce a rispondere.

Svantaggi

  • Common Gateway Interface consuma molto tempo di elaborazione
  • CGI incorre in overhead quando HTTP rimane come un protocollo senza stato
  • Consiste in una base di codice enormemente esistente, principalmente in Perl
  • Ogni volta che viene eseguito uno script CGI, il processo viene riavviato
  • Riduce il funzionamento del server

Applicazioni di Common Gateway Interface

CGI trasforma il Web dalla raccolta di dati statici in una nuova struttura interattiva, in cui gli utenti possono interagire con il numero di domande per eseguire le applicazioni. Alcune delle applicazioni progettate utilizzando CGI sono:


Forme

I moduli sono uno degli utenti più significativi di CGI. I moduli consentono all'utente di condividere informazioni ed è un sottoinsieme di HTML. Un programma CGI rende questi moduli molto interattivi sia per l'utente che per il fornitore elaborando e selezionando i moduli appropriati che corrispondono ai criteri di selezione.

Gateway

I gateway Web sono programmi o script simili. Serve per accedere alle informazioni necessarie che non sono direttamente leggibili dal client dal database. Il programma CGI viene utilizzato per fungere da gateway e utilizzare un linguaggio di programmazione appropriato per leggere le informazioni, formattarle e condividerle con il client.

Documenti virtuali

La creazione di documenti virtuali è la parte più importante del CGI. Mentre virtuale i documenti vengono creati secondo la richiesta dell'utente, può variare da HTML virtuale, immagini, testo normale a volte audio.

Applicazioni funzionanti di Common Gateway Interface

Di seguito sono elencati alcuni degli straordinari programmi CGI sul web che descrivono i potenti aspetti del CGI.

Ricerca Lycos nel World Wide Web

Questo server aiuta gli utenti a cercare documenti particolari. In risposta alla richiesta dell'utente, Lycos restituisce il documento ipertestuale che corrisponde ai criteri di ricerca Web dell'utente. I collegamenti sono www.lycos.com.

Libro da colorare

La fantastica applicazione progettata per gli utenti che amano colorare. Il collegamento è www.ravenna.com/coloring.

Dizionario giapponese-inglese

È un'applicazione virtuale basata su documenti. Il programma CGI all'avanguardia richiede una parola inglese dall'utente e restituisce una parola giapponese equivalente con immagini appropriate.

Libro degli ospiti con mappa del mondo

Utilizza un'applicazione basata su form, che consente agli utenti di lasciare messaggi letti da tutti.

Problemi di sicurezza di Common Gateway Interface

Uno script CGI implementato nel browser dell'utente può contenere bug. Ogni bug è il potenziale per creare sicurezza problemi. I possibili problemi di sicurezza degli script CGI sono presentati in due modi:

  • La perdita intenzionale o involontaria delle informazioni riguardanti il ​​sistema host aiuta gli hacker a irrompere facilmente
  • Gli script CGI che elaborano gli input degli utenti remoti possono essere vulnerabili agli attacchi in cui l'utente remoto li illude per eseguire i comandi

Domande frequenti

1). Definisci l'interfaccia del gateway comune.

La Common Gateway Interface (CGI) è descritta come un insieme di regole per lo scambio di informazioni tra un server web e uno script personalizzato

2). Nomina alcuni dei linguaggi di programmazione supportati da CGI

C, C ++, Java, Perl, Python o VB (Visual Basic)

3). Fornisci una funzionalità di CGI

Utilizzato per creare semplici script di shell e applicazioni interattive

4. Dare un vantaggio e uno svantaggio di CGI

Vantaggio - CGI consente di utilizzare il codice già creato e gli utenti possono evitare di riscrivere il proprio codice

Svantaggio - Riduce il funzionamento del server e consuma molto tempo di elaborazione

5). Quali sono le forme di CGI?

Il modulo è un sottoinsieme di HTML e viene utilizzato per la raccolta dei dati e la comunicazione interattiva

6). Cos'è l'overhead CGI?

CGI incorre in overhead quando HTTP diventa un protocollo senza stato. Ciò significa che il processo CGI viene inizializzato per ogni 'hit' nel browser.

7). Perché Perl viene utilizzato da molte persone per la CGI?

Perl è uno strumento facile da usare. Dispone di potenti funzionalità per estrarre informazioni da file di testo, scansionare file di testo arbitrari e stampare rapporti basati su tali informazioni.

In questo articolo abbiamo spiegato la definizione di Common Gateway Interface. Inoltre, abbiamo discusso in dettaglio il principio di funzionamento dell'interfaccia del gateway comune, vantaggi e svantaggi, usi, funzionamento applicazioni di CGI in tutto il mondo e possibili minacce alla sicurezza.