|
|
|
|
|
|
|
|
|
|
|
|
|
CGI - La communication avec le navigateur
Notion d'URL et d'en-tête HTTP
Une URL (Uniform Resource Locator) est une adresse permettant
de localiser un fichier sur Internet de manière unique. C'est grâce à cette adresse
(du genre www.commentcamarche.net) qu'il est possible d'effectuer des requêtes
vers des pages web.
Lorsqu'une telle adresse est saisie dans un navigateur, celui-ci localise
le serveur web et lui transmet une requête via le
protocole HTTP (HyperText Transfer Protocol), permettant
d'envoyer des données sous la forme d'en-têtes permettant d'identifier par exemple :
Schéma de requête d'un navigateur à un serveur Web
Pour apprendre à utiliser les CGI, il est essentiel de comprendre comment se
déroule la communication entre le navigateur et le serveur lors de la demande
d'une page web. Pour cela, il est préférable d'avoir des notions sur
le protocole HTTP.
Lorsqu'un navigateur effectue une requête (typiquement par saisie ou clic d'une URL,
ou bien par envoi d'un formulaire), les étapes suivantes se déroulent :
- Les données de requête sont envoyées
au serveur sous forme d'en-têtes dans une requête HTTP.
- Lorsque le serveur reçoit la requête, il analyse les en-têtes HTTP,
notamment celui permettant de localiser le fichier demandé.
- Si le serveur trouve le fichier HTML demandé,
il va envoyer au client
(le navigateur) un en-tête de réponse valide (généralement Success)
et les données créées par l'application.
- A la réception du document, le navigateur affiche le résultat à l'écran.
Dans le cas d'un script CGI, le schéma est légérement plus compliqué :
- Les données de requête sont envoyées au serveur sous forme d'en-têtes de requête HTTP.
- Lorsque le serveur reçoit la requête, il analyse les en-têtes HTTP, notamment celui permettant de localiser le fichier demandé.
- Le serveur va ensuite analyser l'extension du fichier, puis exécuter l'application associée à ce type de fichier (l'interpréteur Perl dans le cas d'une extension .pl). Il fournit alors à cette application les en-têtes de la requête HTTP (souvent sous forme de variable d'environnement).
- L'application va s'exécuter puis fournir des données de sortie (commençant par une formulation d'en-tête de la forme content-type : text/html) au serveur.
- Le serveur va envoyer au client un en-tête de réponse valide (généralement Success)ainsi que les données créées par l'application.
- A réception du document, le navigateur affiche le résultat à l'écran.
Discussions pertinentes trouvées dans le forum
|
|