เป็นส่วนหนึ่งของโปรโตคอล HTTP 1.1
โพรโทคอล HTTP 1.1 มีส่วนหัวที่เรียกว่า "โฮสต์:" ซึ่งระบุว่าเว็บไซต์ใดบนเซิร์ฟเวอร์เฉพาะที่ไคลเอ็นต์พยายามเข้าถึง
ดังนั้นหาก snoopy.net และ woodstock.org ทั้งคู่แบ่งปัน 192.0.32.10 และเบราว์เซอร์ของคุณพยายามรับเนื้อหาจากhttp://snoopy.net/doghouse
คำขอ http เฉพาะจะมีลักษณะดังนี้:
GET /doghouse HTTP/1.1
Host: snoopy.net
หาก URL ที่ต้องการคือhttp://woodstock.org/seeds
คำขอจะมีลักษณะ
GET /seeds HTTP/1.1
Host: woodstock.org
ในทั้งสองกรณีจะมีซ็อกเก็ต tcp ระหว่างคอมพิวเตอร์ของคุณและพอร์ต 80 ของเซิร์ฟเวอร์ เซิร์ฟเวอร์รู้ว่าจะรับเนื้อหาจาก /var/www/snoopy.net หรือ /var/www/woodstock.org/ ตามส่วนหัวของโฮสต์
จะมีส่วนหัวอื่น ๆ สำหรับคุกกี้และสิ่งอื่น ๆ เช่นชนิดของเบราว์เซอร์และเนื้อหาที่ได้รับอนุญาต แต่ส่วนหัว "โฮสต์" โดยเฉพาะคือสิ่งที่ช่วยให้เว็บเซิร์ฟเวอร์รู้ว่าต้องการเว็บไซต์เสมือนใด
มีมากขึ้นในRFC2616
นี่คือสาเหตุที่เว็บไซต์ https * ต้อง *** มีที่อยู่ IP ของตัวเอง - การแลกเปลี่ยนคีย์ ssl และการตรวจสอบใบรับรองเกิดขึ้นก่อนการทำธุรกรรม http ดังนั้นเซิร์ฟเวอร์ http จะไม่ทราบว่าจะให้ใบรับรองสำหรับ "woodstock org "หรือ" snoopy.net "เมื่อได้รับการเชื่อมต่อ https บนพอร์ต 443 จาก 192.0.32.10
แก้ไข
** ในความคิดเห็นGrawityชี้ให้เห็นว่ามีส่วนขยายของ SSL ในข้อมูลจำเพาะ TLS ที่อนุญาตให้เซิร์ฟเวอร์ทราบว่าเว็บไซต์ใดที่ผู้ใช้พยายามเข้าถึงและเว็บเบราว์เซอร์ที่ทันสมัยส่วนใหญ่มีส่วนขยายเหล่านี้ดังนั้นจึงต้องเป็นบิตด้วย แข็งแรง