ITInnovDesign
Latest Posts:

Peut on faire du developpement web en local sans le HTTP? ou mieux c'est quoi le localhost?
Peut on faire du developpement web en local sans le HTTP? ou mieux c'est quoi le localhost?

Qu'est ce que <> ? À quoi sert il?

Voilà une question anodine d'un dev debutant qui à chaque fois qu'il veut lancer un site en locale, revient toujours ce fameux localhost ou encore le 127 .0.0.1 ou en parole technique, l'addresse de loopback.

Internet et le web sont régis par le protocolle HTTP c'est quoi un protocole en fait? ce n'est rien d'autres qu'un ensemble de normes mis sur pieds par les differents acteurs du web (concepteur de navigateur, de serveur web, de systhème d'exploitation, des developpeurs web etc..) dans l'optique de donner des règles et definir les principes par lesquel les machines et logiciels qui participent aux réseau doivent interagire et communiquer entre elles, sans ces normes, il serait difficile de pouvoir à partir d'un navigateur web sur une machine windows par exemple, demander une page web à un serveur web sous linux ou MAC et vice versa car chaque logiciel(serveur web) et la machine sur laquelle ce logiciel est deployé, à son propre systhème d'exploitation qui veut dire, manière de penser differente et utilisations des languages et technologies et approches differentes du coup pour qu' un logiciel depuis windows puisse communier et échanger avec un logiciel sur MAC ou linux en traversant les routeurs et switch sur le reseau, il faut un ensemble de règles et de normes acceptées par tous et que chacun, à un point precis de l'implementation de son systhème, doit mettre- en application ces normes, c'est grace au respect des normes que fonctione internet, c'est parceque Chrome, edge, mozilla, safari comme navigateur respectent les memes normes et implementent les memes standard web que nous, developpeurs pouvons dormir tranquille et écrire un code javascript qui fonctionne partout et qui peut traverser une machine à une autre sans qu'on puisse developper la meme chose pour chaque machine et systhème d'exploitation.

J'ai parlé dans mes articles récents du fonctionnement des reseaux ( LAN, WAN,MAN, internet etc..) , je vous ai parlé du role joué par TCP, bref pour que deux machines communiquent entre elles, il faut passer par l'ouverture et l'établissement d'une connession TCP qui va s'occuper de l'acheminement des paquets contenant les données de la machine émettrice qui est souvent votre machine ou peripherie digitale et le serveur ou se trouve la page web ou les API REST donc votre machine à besoin. Les system d'exploitation que ce soit mobile ou pour PC jouent un role fondamentale dans cette Communication car au depart, ce sont eux qui doivent former le paquet de sortie en empillant les protocoles les uns apres les autres Mac-Ip-Tcp---http, bref en parole simple, ce sont les developpeurs des system d'exploitation qui écrivent le code et les algorithmes pour le fonctionnement de la communication comme par exemple la logique de TCP et à l'arriver du paquet sur le serveur, ce sont toujours les system d'exploitation qui doivent depaquetter et reconstruire les données initiales venant du client à fin de le passer au serveur web.

Le client et le serveur peuvent parfois se trouver sur la meme machine, donc par exemple, le developpeur deploie son site dans apache ou iis ou ngnix qui sont des serveurs web et puis dans la meme machine, il ouvre le navigateur Chrome ou Mozilla ou edge etc.. pour acceder au site web qu'il a à peine deployé sur un des serveurs web de la meme machine.. dans ce cas specifique, comment le system d'exploitation doit il se comporter? Le paquet cette fois ci n'est pas destiné à sortir de la machine, donc le system d'exploitation ne doit pas l'envoyé vers la carte reseau car le client et le serveur se trouvent sur la meme machine, donc pas besoin de dns non plus, il s'agit d'une comunication entre deux processus d'une meme machine mais qui doit passer par la pile protocolaire Mac-Ip-Tcp---http.. voilà pourquoi est née une addresse interne qu'on appelle localhost ou addresse de loopback en anglais, qui correspond à l'ip 127 .0.0.1 reservé pour un routage de paquet interne à la machine du system d'exploitation, en bref, quand le system d'exploitation voit cette addresse, il sait qu'il ne doit pas router le paquet vers la carte reseau mais qu'il doit faire comuniquer deux processus sur la machine à sa disposition, l'un un client web et l'autre un serveur qui ecoute sur une porte TCP qui peut etre 80, 8080, 9999 etc etc.. tout depend de la configuration du serveur web.


Author: admin
17.05.2023, 08:57
Category: Coding
Comments: 0
Views: 559
-

Share

Comments (0)
There are no comments yet.

Leave A Comment
processing...