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 pour les pages créées par ce moyen. Toutefois, étant donné que le serveur renvoie telles quelles au navigateur les informations que lui fournit 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...
|
Le programme CGI doit créer lui-même les 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
|
Les deux retours chariot sont indispensables!
|
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.commentcamarche.net:
#! /usr/local/bin/perl print "location : http://www.commentcamarche.net";