But d'un script CGI

Les script CGI ont pour but d'afficher des pages Web ayant été générées par un programme informatique, d'où la dénomination de pages web dynamiques pourles pages créées par ce moyen. Toutefois, étant donné que le serveur revoie telles quelles au navigateur les informations que lui fournissent le script CGI, il est nécessaire d'ajouter aux données à afficher les en-têtes HTTP permettant au navigateur de comprendre qu'il s'agit d'une page web...

 

ATTENTION Le programme CGI doit créer lui-même les en-têtes HTTP

 

Envoi des en-têtes HTTP

Puisque le serveur ne crée pas d'en-têtes pour les CGi, la première chose qu'un CGI doit faire consiste à envoyer un en-tête HTTP correspondant au type de fichier qu'il renvoie. Compte-tenu du fait que le rôle principal des CGI est de créer des pages dynamiques, l'en-tête HTTP correspondra au type text/html. La première chaîne envoyée au navigateur est donc:

 


  
content-type : text/html\n\n

 

ATTENTION Les deux retours chariot sont indispensables!
  • le premier sert simplement à retourner à la ligne
  • le second sert à créer la ligne vide séparant les en-têtes HTTP du corps du message, comme le veut la spécification du protocole HTTP

Vous vous demandez sûrement pourquoi le serveur ne pourrait pas ajouter tout seul les en-têtes HTTP, comme il le fait dans le cas des pages web statiques (fichiers .htm et .html). En fait, un programme CGI peut renvoyer n'importe quel type de contenu, c'est-à-dire qu'il est capable de renvoyer une image octet par octet, qui sera intégrée dans un document HTML par exemple, pourvu que le CGI renvoie un en-tête correspondant au type de l'image. Une fois de plus, le serveur pourrait éventuellement être capable de reconnaître le type de données que le CGI renvoie et adapter les en-têtes HTTP en fonction. En réalité les en-têtes HTTP peuvent faire beaucoup plus que préciser le type de document envoyé, il est par exemple possible d'effectuer une redirection en renvoyant un en-tête de redirection. Une des applications peut par exemple consister à pointer vers un CGI, qui va enregistrer des informations sur le visiteur (une sorte de compteur de visites amélioré), puis le diriger vers un document...

Exemple de script CGI en Perl

Voici un exemple de script tout simple permettant d'afficher une page web sur laquelle est écrit "Hello World" (cette phrase est sans aucun doute la phrase la plus vue sur le Web, car c'est la première chaîne que les programmeurs en herbe affichent par coutume).

 


  
#! /usr/local/bin/perl
print "content-type : text/html\n\n";
print "<HTML>";
print "<HEAD>";
print "<TITLE>Hello world</TITLE>";
print "</HEAD>";
print "<BODY>";
print "<Hello world!>";
print "</BODY>";
print "</HTML>";

Voyons maintenant un autre exemple, dans lequel le programme CGI effectue uniquement une redirection vers l'URL http://www.autoformations.co.cc:

 


  
#! /usr/local/bin/perl
print "location : http://www.autoformations.co.cc";



 

 

 

 











Ajouter aux Favoris Ajouter aux votre page
 

 





Autoformations les cours informatiques en vidéos gratuitement
:: Copyright © 2008 http://www.autoformations.co.cc All rights reserved ::