เว็บเซิร์ฟเวอร์มีเพียงหนึ่งเว็บไซต์หรือไม่?

Jun 30, 2025
คลาวด์และอินเทอร์เน็ต
เนื้อหาที่ไม่ถูกแคช

เมื่อคุณเริ่มเรียนรู้ว่าชื่อโดเมนที่อยู่ IP เว็บเซิร์ฟเวอร์และเว็บไซต์ทั้งหมดเหมาะสมและทำงานร่วมกันได้อย่างไรในบางครั้งอาจสร้างความสับสนหรือหนักใจเล็กน้อย มันตั้งค่าอย่างไรให้ทำงานได้อย่างราบรื่น? โพสต์ถาม & ตอบ SuperUser วันนี้มีคำตอบสำหรับคำถามของผู้อ่านที่อยากรู้อยากเห็น

เซสชันคำถามและคำตอบของวันนี้มาถึงเราโดยได้รับความอนุเคราะห์จาก SuperUser ซึ่งเป็นแผนกย่อยของ Stack Exchange ซึ่งเป็นการรวมกลุ่มเว็บไซต์ถาม & ตอบโดยชุมชน

เอื้อเฟื้อภาพโดย Rosmarie Voegtli (Flickr) .

คำถาม

ผู้ใช้ SuperUser reader3407319 ต้องการทราบว่าเว็บเซิร์ฟเวอร์มีเพียงเว็บไซต์เดียวหรือไม่:

จากสิ่งที่ฉันเข้าใจเกี่ยวกับ DNS และการเชื่อมโยงชื่อโดเมนกับที่อยู่ IP ของเว็บเซิร์ฟเวอร์ที่จัดเก็บเว็บไซต์นั่นหมายความว่าแต่ละเว็บเซิร์ฟเวอร์สามารถมีเว็บไซต์ได้เพียงแห่งเดียวหรือไม่ หากเว็บเซิร์ฟเวอร์มีมากกว่าหนึ่งเว็บไซต์ทุกอย่างจะได้รับการแก้ไขอย่างไรเพื่อให้ฉันสามารถเข้าถึงเว็บไซต์ที่ต้องการได้โดยไม่มีปัญหาหรือเกิดการผสมผสาน

เว็บเซิร์ฟเวอร์มีเว็บไซต์เพียงแห่งเดียวหรือมีมากกว่านั้น?

คำตอบ

Bob ผู้สนับสนุน SuperUser มีคำตอบให้เรา:

โดยพื้นฐานแล้วเบราว์เซอร์จะรวมชื่อโดเมนไว้ในคำขอ HTTP เพื่อให้เว็บเซิร์ฟเวอร์ทราบว่าโดเมนใดถูกร้องขอและสามารถตอบสนองได้

คำขอ HTTP

นี่คือวิธีที่คำขอ HTTP ทั่วไปของคุณเกิดขึ้น:

1. ผู้ใช้ระบุ URL ในรูปแบบ http: // host: port / path

2. เบราว์เซอร์แยกส่วนโฮสต์ (โดเมน) ของ URL และแปลเป็นที่อยู่ IP (ถ้าจำเป็น) ในกระบวนการที่เรียกว่าการแก้ไขชื่อ การแปลนี้สามารถเกิดขึ้นผ่าน DNS แต่ไม่จำเป็นต้อง (ตัวอย่างเช่นไฟล์โฮสต์ภายในบนระบบปฏิบัติการทั่วไปข้าม DNS)

3. เบราว์เซอร์เปิดการเชื่อมต่อ TCP ไปยังพอร์ตที่ระบุหรือตั้งค่าเริ่มต้นเป็นพอร์ต 80 บนที่อยู่ IP นั้น

4. เบราว์เซอร์ส่งคำขอ HTTP สำหรับ HTTP / 1.1 จะมีลักษณะดังนี้:

ส่วนหัวของโฮสต์เป็นมาตรฐานและจำเป็นใน HTTP / 1.1 ไม่ได้ระบุไว้ในข้อมูลจำเพาะ HTTP / 1.0 แต่เซิร์ฟเวอร์บางเครื่องก็รองรับอยู่ดี

จากที่นี่เว็บเซิร์ฟเวอร์มีข้อมูลหลายส่วนที่สามารถใช้ในการตัดสินใจว่าการตอบสนองควรเป็นอย่างไร โปรดทราบว่าเป็นไปได้ที่เว็บเซิร์ฟเวอร์เดียวจะเชื่อมโยงกับที่อยู่ IP หลายรายการ

  • ที่อยู่ IP ที่ร้องขอจากซ็อกเก็ต TCP (ที่อยู่ IP ของไคลเอนต์ก็มีให้ใช้เช่นกัน แต่จะไม่ค่อยใช้และบางครั้งก็ใช้สำหรับการบล็อก / กรอง)
  • พอร์ตที่ร้องขอจากซ็อกเก็ต TCP
  • ชื่อโฮสต์ที่ร้องขอตามที่ระบุไว้ในส่วนหัวของโฮสต์โดยเบราว์เซอร์ในคำขอ HTTP
  • เส้นทางที่ร้องขอ
  • ส่วนหัวอื่น ๆ (คุกกี้ ฯลฯ )

อย่างที่คุณสังเกตเห็นการตั้งค่าโฮสติ้งที่ใช้ร่วมกันที่พบบ่อยที่สุดในปัจจุบันทำให้เว็บไซต์หลายแห่งมีที่อยู่ IP เดียว: การรวมพอร์ตโดยปล่อยให้โฮสต์เพื่อแยกความแตกต่างระหว่างเว็บไซต์

สิ่งนี้เรียกว่าไฟล์ โฮสต์เสมือนตามชื่อ ใน Apache-land ในขณะที่ Nginx เรียกพวกเขา ชื่อเซิร์ฟเวอร์ในบล็อกเซิร์ฟเวอร์ และ IIS ต้องการ เซิร์ฟเวอร์เสมือน .

สิ่งที่เกี่ยวกับ HTTPS

HTTPS แตกต่างกันเล็กน้อย ทุกอย่างเหมือนกันขึ้นอยู่กับการสร้างการเชื่อมต่อ TCP แต่หลังจากนั้นจะต้องสร้างอุโมงค์ TLS ที่เข้ารหัส เป้าหมายคือการไม่รั่วไหลข้อมูลใด ๆ เกี่ยวกับคำขอ

ในการตรวจสอบว่าเว็บเซิร์ฟเวอร์เป็นเจ้าของโดเมนนี้จริงเว็บเซิร์ฟเวอร์ต้องส่งใบรับรองที่ลงนามโดยบุคคลที่สามที่เชื่อถือได้ จากนั้นเบราว์เซอร์จะเปรียบเทียบใบรับรองนี้กับโดเมนที่ขอ

สิ่งนี้นำเสนอปัญหา เว็บเซิร์ฟเวอร์จะทราบได้อย่างไรว่าจะส่งใบรับรองของโฮสต์ / เว็บไซต์ใดหากจำเป็นต้องดำเนินการนี้ก่อนที่จะได้รับคำขอ HTTP

ตามเนื้อผ้าปัญหานี้ได้รับการแก้ไขโดยการมีที่อยู่ IP เฉพาะ (หรือพอร์ต) สำหรับทุกเว็บไซต์ที่ต้องใช้ HTTPS เห็นได้ชัดว่าปัญหานี้กลายเป็นปัญหาเมื่อเราใช้ที่อยู่ IPv4 หมด

ป้อน SNI (การระบุชื่อเซิร์ฟเวอร์) ขณะนี้เบราว์เซอร์ส่งชื่อโฮสต์ในระหว่างการเจรจา TLS ดังนั้นเว็บเซิร์ฟเวอร์จึงมีข้อมูลนี้เร็วพอที่จะส่งใบรับรองที่ถูกต้อง ในฝั่งเว็บเซิร์ฟเวอร์การกำหนดค่าจะคล้ายกับวิธีกำหนดค่าโฮสต์เสมือน HTTP

ข้อเสียคือตอนนี้ชื่อโฮสต์ถูกส่งผ่านเป็นข้อความธรรมดาก่อนการเข้ารหัสและข้อมูลรั่วไหลเป็นหลัก โดยปกติถือว่าเป็นการแลกเปลี่ยนที่ยอมรับได้แม้ว่าการพิจารณาชื่อโฮสต์จะถูกเปิดเผยตามปกติในการสืบค้น DNS อย่างไรก็ตาม

จะเกิดอะไรขึ้นหากคุณขอเว็บไซต์ตามที่อยู่ IP เท่านั้น?

สิ่งที่เว็บเซิร์ฟเวอร์ทำเมื่อไม่ทราบว่าโฮสต์เฉพาะที่คุณร้องขอนั้นขึ้นอยู่กับการใช้งานและการกำหนดค่าของเว็บเซิร์ฟเวอร์ โดยทั่วไปจะมีเว็บไซต์ "เริ่มต้น" "รับทั้งหมด" หรือ "ถอยกลับ" ซึ่งจะให้การตอบสนองต่อคำขอทั้งหมดที่ไม่ได้ระบุโฮสต์ไว้อย่างชัดเจน

เว็บไซต์เริ่มต้นนี้อาจเป็นเว็บไซต์อิสระของตนเอง (มักแสดงข้อความแสดงข้อผิดพลาด) หรืออาจเป็นเว็บไซต์อื่น ๆ บนเว็บเซิร์ฟเวอร์ทั้งนี้ขึ้นอยู่กับการตั้งค่าของผู้ดูแลระบบเว็บเซิร์ฟเวอร์


มีสิ่งที่จะเพิ่มคำอธิบาย? ปิดเสียงในความคิดเห็น ต้องการอ่านคำตอบเพิ่มเติมจากผู้ใช้ Stack Exchange ที่เชี่ยวชาญด้านเทคโนโลยีคนอื่น ๆ หรือไม่? ดูกระทู้สนทนาฉบับเต็มได้ที่นี่ .

Do Web Servers Only Hold One Website Each?

Do Servers Hold One Website Only? (7 Solutions!!)

How To Host Your Website For Free


คลาวด์และอินเทอร์เน็ต - บทความยอดนิยม

วิธีสตรีมเพลงคุณภาพสูงบน Spotify

คลาวด์และอินเทอร์เน็ต Nov 28, 2024

เนื้อหาที่ไม่ถูกแคช Spotify Premium ช่วยให้คุณเข้าถึงการสตรีมเพลงคุณภาพ..


การสั่งซื้อ 1 คลิกใน Amazon คืออะไรและทำงานอย่างไร

คลาวด์และอินเทอร์เน็ต Aug 2, 2025

Amazon กลายเป็นชื่อครัวเรือนโดยให้คุณสั่งซื้อเกือบทุกอย่างที่คุณต..


วิธีค้นหาเกมดีๆบน Steam

คลาวด์และอินเทอร์เน็ต Apr 18, 2025

ในปี 2016 ผู้จัดจำหน่ายเกมบนพีซี Steam ได้เพิ่มไลบรารีที่น่าประทับใจแ..


วิธีการรีสตาร์ทเซิร์ฟเวอร์สื่อเพล็กซ์ของคุณ

คลาวด์และอินเทอร์เน็ต Mar 29, 2025

เนื้อหาที่ไม่ถูกแคช Plex Media Server มีชื่อเสียงในด้านประสบการณ์การใช้ง�..


วิธี จำกัด ความเร็วในการโอนที่อนุญาตของ OneDrive

คลาวด์และอินเทอร์เน็ต Aug 2, 2025

เนื้อหาที่ไม่ถูกแคช Microsoft OneDrive เป็นการนำเสนอที่เก็บข้อมูลบนคลา..


วิธีดูสภาพอากาศที่กำลังจะมาถึงเกมกีฬารายการทีวีและอื่น ๆ ใน Google ปฏิทิน

คลาวด์และอินเทอร์เน็ต Oct 12, 2025

เนื้อหาที่ไม่ถูกแคช Google ปฏิทินไม่ได้เป็นเพียงเครื่องมือในการติ..


เข้าถึงแคชอย่างรวดเร็วใน Firefox

คลาวด์และอินเทอร์เน็ต Mar 31, 2025

เนื้อหาที่ไม่ถูกแคช คุณกำลังมองหาวิธีที่ง่ายและรวดเร็วในการดูเน�..


เพิ่ม "My Dropbox" ในเมนูเริ่มของ Windows 7

คลาวด์และอินเทอร์เน็ต Jul 23, 2025

ที่ How-To Geek เราเป็นแฟนตัวยงของ Dropbox ซึ่งเป็นยูทิลิตี้ซิงค์ไฟล์ออนไ�..


หมวดหมู่