-
question about url
Bonjour,
svp, corrigez moi si j'écris des choses fausses.
Bon, à ce que je connais, Apache est un serveur web qui permet d'héberger plusieurs sites web.
On admet que apache est installé sur un serveur dit "A"
Pour accéder à un site depuis le navigateur on doit taper son url par exemple
http://www.developpez.net.
Ma question est la suivante
www.developpez.net réference une @ ip d'un serveur c'est à dire l'@ du serveur "A".
Bon maintenant si j'ai un autre site sur le même serveur "A" normalement il aura la même @ ip
Alors quel site j'aurai si j'écris http://@ ip
L'objectif de ma question est de dire que www.developpez.net ne s'agit pas du nom du serveur ou bien nom du domaine (tout bref) comme disent toutes les définitions de l'URL mais plutôt nom_du_serveur+un_pointeur_vers_un_dossier
-
Ta question c'est en fait le fonctionnement des hôtes virtuels (ou "virtual hosts" en anglais). Comment ça fonctionne donc ? En fait, quand ton navigateur demande un site (au hasard : www.developpez.net), ton navigateur va effectivement demander l'IP qui correspond à ce nom. Ensuite, il se connecte à cette IP et envoie une série de données : c'est le protocole HTTP. Et ce protocole HTTP dit qu'il faut dire quel nom de site on veut, donc le navigateur dit un truc du genre :
Code:
Host: www.developpez.net
Donc, Apache regarde la valeur donnée à ce "Host:" pour savoir quoi faire. Il regarde sa configuration et trop un hôte virtuel appelé "www.developpez.net" : d'où qu'il envoie ce qu'on attend de lui pour le site "www.developpez.net".
Maintenant, si on a un autre site (www.abc.com) qui pointe sur la même IP, pas de problème : le navigateur va se connecter à cette même IP et dit :
d'où qu'Apache est capable de savoir qu'il faut utiliser les fichiers du site www.abc.com.
-
:king:
Excellente réponse
Merci beaucoup, oui ça m'est échappé le truc du host.:aie:
:resolu: