Ich war immer verwirrt von der Idee, dass mehrere Websites dieselbe IP-Adresse haben. Ich meine, wenn es da draußen einen Webserver gibt, der eine IP-Adresse hat. Ich kann diese IP-Adresse einfach mit dem richtigen Port wie 80 eingeben und das Ziel-Gateway weiß, auf welchem Server diese eingehende Anfrage weitergeleitet werden soll. In diesem Fall ist Port 80 der Webserver und die Website wird dem Client bereitgestellt.
Ich verstehe jedoch nicht, wie zwei Websites auf dem Webserver und eine IP-Adresse gehostet werden können. Angenommen, die beiden Websites mit den Namen abc.com und xyz.com werden auf demselben Webserver mit einer IP-Adresse gehostet. Der DNS-Server, den ich verwende, z. B. einer von meinem Internetdienstanbieter, kann die Namen mit der IP-Adresse einwandfrei auflösen und meinen Webbrowser auf den richtigen Webserver verweisen. Meine Verwirrung ist jedoch, wie der Webserver weiß, welche Website bereitgestellt werden soll.
Ich habe immer gedacht, dass die einzige Möglichkeit, zwischen verschiedenen Websites auf demselben Webserver zu unterscheiden, die jeweiligen Portnummern sind. Mit anderen Worten, wenn sich die eingehende Anforderung auf Port 80 befindet, ist es abc.com und wenn es sich um Port 81 handelt, ist es xyz.com. Offensichtlich füge ich xyz.com:81 nicht in meinen Webbrowser ein, daher wird standardmäßig Port 80 verwendet. Warum bekomme ich dann die eigentliche xyz.com-Website zurück und nicht abc.com?