Outils d'utilisateurs

Outils du Site


fondamentaux:cgi

Common Gateway Interface

La Common Gateway Interface est une API utilisée par les serveurs HTTP pour exécuter des programmes et transmettre leur résultat au client. Sa première version a été standardisée dans la RFC 3875.

Principe

Le principe normal de fonctionnement d'un serveur HTTP est d'envoyer le fichier demandé par le client (par le biais d'une requête HTTP GET).

Dans le cadre du fonctionnement en mode CGI, lorsqu'un client fait appel à une URL, par exemple http://mydomain/mailman/admin :

  • L'URL est liée à un programme exécutable que le serveur HTTP exécutera lors de la demande “HTTP GET” du client ;
  • Le serveur HTTP, via l'interface CGI, va récupérer la sortie standard du programme exécuté ;
  • Le serveur HTTP renvoie au client la sortie standard récupérée.

Le programme exécutable peut être écrit dans n'importe quel langage de programmation, il doit cependant être exécutable directement par le serveur (langage interprété (le fichier doit être exécutable et avoir un shebang correct) ou langage compilé).

Conception

Au niveau de la conception, CGI fonctionne selon le modèle “un processus par requête”. En fonctionnement, cela implique donc qu'un même programme est exécuté autant de fois qu'il y a de requêtes, les performances et la charge machine en pâtissent donc. Une évolution de cette API a été développée et est nommée Fast Common Gateway Interface.

fondamentaux/cgi.txt · Dernière modification: 2012/03/21 23:53 par nekolover