Introduction au fontionnement web

Introduction au fontionnement web

Qu’est-ce qu’un site web? Comment marche un site? Que se passe-t-il dans les coulisses?

Mais avant de rentré dans le vif du sujet, nous allons voir ce qu’est le Web?

Passons en revue rapidement ses mécanismes de base. Regardé attentivement la diapositive:

Le Web vs Internet

Alors, quelle est la différence entre le Web et Internet?

Internet est l’infrastructure qui connecte les ordinateurs sur un réseau mondial. Vous pouvez le voir comme les fils et les câbles qui transportent l’information dans le monde entier.

Le Web vit dans le cadre fourni par Internet. Le Web est donc tout ce qui passe par Internet, via le protocole HTTP.

Qu’est ce que le protocole HTTP?

HTTP signifie Hyper Text Transfer Protocol. C’est un protocole permettant de transférer des ressources (== fichiers) entre deux ordinateurs (~ ordinateurs).

Ce protocole repose sur un système très simple:

  • La machine à partir de laquelle vous souhaitez accéder à une page Web est appelée le client
  • La machine qui héberge le contenu du site s’appelle le serveur
  • Le client envoie une requête HTTP au serveur, avec l’URL de la page à ouvrir
  • Le serveur traite cette demande et renvoie une réponse HTTP au client, avec le contenu de la page.
  • Le client traite cette réponse et affiche la page Web.

Interagir avec un site web

La conclusion la plus importante de ce chapitre est la suivante:

Toute action sur un site Web déclenche une requête HTTP.

Que vous tapiez une URL dans la barre d’adresse, que vous cliquiez sur un lien ou que vous soumettez un formulaire, votre action déclenchait une requête HTTP envoyée par le client au serveur.

Statique vs dynamique

Si le contenu demandé dans la requête HTTP est statique, comme un simple site Web d’information par exemple, le serveur lira le contenu du fichier HTML correspondant sur son disque dur et le renverra au client via la réponse HTTP.

Si le contenu est dynamique, par exemple si le contenu du fichier HTML est différent pour deux utilisateurs connectés différents (comme dans deux pages de profil Facebook), ce ne sera pas aussi simple.

Le serveur doit être plus intelligent. Il doit “parler” un langage de programmation back-end.

Ce langage de programmation back-end pourrait être ruby, php, python, java, etc.

Avec le contenu dynamique, la demande HTTP est traitée par le code du back-end.

Ce code va alors probablement interroger une base de données et va finalement construire le fichier HTML avec le bon contenu. Ensuite, il enverra le fichier HTML au client via la réponse HTTP.

http

Points clés à retenir:

  • Le web repose sur deux machines communicantes

  • Le client est la machine demandant du contenu

  • Le serveur est la machine hébergeant le site web (~ data + code)

  • Ils communiquent tous les deux via le protocole HTTP

  • Le protocole HTTP transfère les fichiers demandés

  • Ce transfert repose sur un système de requête / réponse

  • Le client envoie une requête au serveur

  • Le serveur traite la demande et construit la réponse avec un fichier HTML.

  • Le client reçoit la réponse et traite le fichier HTML pour afficher la page Web dans un navigateur.

Andry R.
Andry R. Développeur Fullstack
comments powered by Disqus