CGI (acronyme en anglais pour l'interface de passerelle commune), en portugais, une interface de porte d'entrée commune. Interface: élément qui fournit une connexion physique ou logique entre deux systèmes ou parties d'un système qui ne pourraient pas être connectés directement.
Compte tenu de la vitesse à laquelle les innovations se produisent, CGI peut être considérée comme ancienne, en tenant compte de la création de l'ordinateur, on peut dire qu'elle est à l'âge mûr.
En 1993, l'équipe du National Center for Supercomputing Applications (NCSA) a écrit une spécification pour appeler les exécutables de ligne de commande sur la liste de diffusion www-voltal. Cependant, NCSA n'héberge pas la spécification.
D'autres développeurs ont adopté la spécification et ont été une norme pour les serveurs Web depuis. Un groupe présidé par Ken Croar a commencé un emploi en novembre 1997 pour obtenir la définition de NCSA la plus définie formellement. Ce travail a abouti à RFC3875, qui spécifie la version CGI 1.1. Les contribuables suivants sont expressément mentionnés dans la RFC:
Rob McCool (auteur du serveur Web NCSA HTTPD) John Franks (auteur du serveur Web GN) Ari Lotonen (développeur de serveur Web Cern HTTPD) Tony Sanders (auteur du serveur Web de Plexus) George Phillips (maintenance du serveur Web à l'Université de la Colombie-Britannique).
En tant qu'alternative, vous pouvez considérer:
cd /usr/lib/cgi-bin apt install apache2
a2enmod cgid
a2enmod rewrite
systemctl restart apache2
nano /etc/apache2/mods-available/cgi.load
nano /etc/apache2/mods-enabled/cgi.load
nano /etc/apache2/mods-enabled/mime.conf

Généralement, le serveur HTTP dispose d'un répertoire (dossier), qui est désigné comme une collection de documents (fichiers), qui peuvent être envoyés aux navigateurs Web liés à ce serveur. CGI étend ce système, permettant au propriétaire du serveur Web de désigner un répertoire dans la collection de documents contenant des scripts (ou des fichiers binaires) au lieu de pages prescrites, ceci est connu sous le nom de répertoire CGI.
cd /usr/lib/cgi-bin
Structure générale des scripts CGI: • Reading et décodage des données (et / ou champs d'information d'un package HTTP); • Traitement des données (enregistrer des informations sur les bases de données, effectuer des calculs, récupérer les données); • Création d'une page Web avec les résultats produits.
Exemples de traitement des données d'application de CGI soumis par le biais de formulaires;
Servir d'interface avec les bases de données, convertissant la transaction HTML en SQL et formatant en HTML les réponses obtenues, puis envoyée les résultats au client;
http://54.174.113.206/cgi-bin/index.sh