Networking

Web 伺服器如何區分不同的 DNS 名稱?

  • January 10, 2012

我想知道 Web 伺服器如何區分同一伺服器(相同 IP)上不同 DNS 名稱的請求?

例如,在我的大學裡有兩個網站:

fea.kau.edu.sa
engineering.kau.edu.sa

當我nslookup在 Windows 上使用時,我得到了兩個域名的相同 IP 地址。你能解釋一下嗎?

HTTP 1.1 要求所有客戶端系統都發送一個標頭 ,Host它向伺服器表明他們正在發送請求的主機名。

這允許伺服器讀取該標頭,並以相應站點的內容進行響應。

如果沒有此功能,每個不同的站點都需要不同的 IP 地址;如果我們沒有這個,我們會更快地用完 IPv4 空間。

啟動您最喜歡的數據包跟踪器(類似於wireshark)並觀察連接時實際發生的情況。

一個非常簡單的請求可能如下所示:

GET / HTTP/1.1
Host: www.example.com
​

(如果您想通過使用 telnet 自己重新創建它,請注意末尾的空行。您也可以在 wikipedia中看到很多這樣的東西)

請求的Host:一部分告訴 Web 伺服器要訪問哪個站點。

這些標題中顯示了很多東西,所以你可能想通過像Firebug這樣的瀏覽器外掛來了解它們

引用自:https://serverfault.com/questions/348343