Comment Ca Marche - Communauté informatique  
   
Accueil - Encyclopédie informatiqueTélécharger l'encyclopédieContribuer à cet article

CGI - Les variables d'environnement

Les variables d'environnement Encyclopédie


Notion de variable d'environnement

Les variables d'environnement sont des données stockées dans des variables du système et permettent aux programmes d'avoir des informations sur son environnement. Dans le cas du programme CGI, l'environnement est notamment composé des éléments suivants :

  • Informations sur le serveur
  • Informations sur le client

Des variables sont créées par le serveur à chaque fois que le programme CGI est appelé. Le serveur les lui fournit en paramètres cachés lors de l'exécution de l'interpréteur.

Les variables d'environnement permettent notamment d'avoir des informations sur le type de serveur, son administrateur, la date à laquelle le CGI a été appelé, l'adresse IP et le type de navigateur du client.

Les variables d'environnement

Les variables d'environnement peuvent être classées en deux catégories :

  • Les variables d'environnement relatives au client
  • Les variables d'environnement relatives au serveur

Les variables d'environnement relatives au client

Variable d'environnement Description
AUTH_TYPE Il s'agit de la méthode d'authentification qui a été utilisée par le client pour accéder au programme CGI
CONTENT_LENGTH Longueur du corps de la requête. Il s'agit de la taille des données envoyées au CGI par l'intermédiaire de la méthode POST d'un formulaire
CONTENT_TYPE Type de données contenu dans le corps de la requête. Il s'agit du type MIME des données
HTTP_COOKIE Cookie du client si jamais un cookie est effectivement présent sur le disque du client
HTTP_REFERER URL de la page qui a appelé le script CGI
HTTP_REQUEST_METHOD Cette variable indique le type de méthode utilisée pour envoyer les données au programme CGI. Il s'agit de GET, HEAD, POST, PUT ou DELETE. Dans le cas de la méthode GET, les données sont encodées avec l'URL de requête, dans le cas de la méthode POST, par contre, les données présentes dans le corps de la requête sont accessibles via le fichier de flux d'entrée standard nommé STDIN
HTTP_USER_AGENT Cette variable permet d'avoir des informations sur le type de navigateur utilisé par le client, ainsi que son système d'exploitation
PATH Il s'agit du chemin d'accès au script CGI
PATH_INFO Il s'agit de la partie de l'URL (ayant servi à accéder au script CGI) située avant le point d'interrogation. Il s'agit donc du chemin d'accès au script CGI sans prendre en compte les données supplémentaires
PATH_TRANSLATED Il s'agit du chemin d'accès absolu au script CGI, c'est-à-dire l'emplacement absolu du script sur le serveur
QUERY_STRING Il s'agit de la partie de l'URL (ayant servi à accéder au script CGI) située après le point d'interrogation. C'est de cette manière que sont transmises les données d'un formulaire dans le cas de la méthode GET
REMOTE_ADDR Cette variable contient l'adresse IP du client appelant le script CGI
REMOTE_USER Cette variable n'existe que si le client a été soumis à une authentification, et contient alors le couple nom_d_utilisateur/mot_de_passe
SCRIPT_FILENAME Chemin d'accès complet au script CGI
SCRIPT_NAME Chemin d'accès relatif (par rapport au chemin d'accès à la racine web) au script CGI
SERVER_PORT Port TCP auquel les données ont été envoyées (généralement le port 80)
SERVER_PROTOCOL Nom et version du protocole utilisé pour envoyer la requête au script CGI

Les variables d'environnement dépendant du serveur

Variable d'environnement Description
DATE_GMT Date actuelle au format GMT
DATE_LOCAL Date actuelle au format local
DOCUMENT_ROOT Racine des documents Web sur le serveur
GATEWAY_INTERFACE Version des spécifications CGI utilisées par le serveur
HTTP_HOST Nom de domaine du serveur
SERVER_ADMIN Adresse électronique de l'administrateur du serveur
SERVER_SOFTWARE Type (logiciel) du serveur web

Affichage des variables d'environnement

Il est possible de créer un script permettant de visualiser l'ensemble des variables d'environnement. Voici un exemple de script écrit en Perl :

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

foreach $key (sort(keys %ENV)) {
  print "$key = $ENV{$key}<BR>\n";
}
print "</BODY>";

Discussions pertinentes trouvées dans le forum

04/09 15h37 personne connaissant cgi recherche personne connaissant cgi ou autre Webmastering 10/09 12h05->kifman032
25/07 19h44 cgi bin probleme cgi-bin Linux/Unix 27/07 17h33->jisisv12
30/06 17h46 cgi python fichiers binaires [CGI][Python] Problème avec fichiers binaires Développement 01/07 17h00->batmat11
08/06 10h18 script cgi perl navigateur script CGI en perl et navigateur Linux/Unix 24/09 17h29->lami20j10
10/03 20h54 script cgi bin Petit script cgi-bin Développement 10/03 23h04->frzburn9
10/03 18h10 executer script cgi Executer un Script CGI Développement 11/03 15h22->rania8
08/09 14h30  Hitparade Xiti et CGI Suggestions 09/09 00h28->dodo8
28/10 00h53 labview cgi Labview + cgi Logiciels/Pilotes 05/12 19h25->foobar478
09/06 11h12 cgi trans fichiers CGI: comment transmettre des fichiers Développement 26/06 14h11->txiki8
06/09 18h32 cgi comprend rien Les CGI j'en peux plus je ne comprend rien... Développement 07/09 21h04->Jolkdarr8
Discussion fermée Problème résolu CGI Plus de discussions sur « CGI »

Ce document intitulé « CGI - Les variables d'environnement » issu de l'encyclopédie informatique Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.