यह कैसे पता है के अपने सवाल का जवाब देने के लिए , यह आपके ब्राउज़र सर्वर क्या भेजता है के साथ क्या करना है।
आप सही हैं कि सिस्टम हमेशा एक आईपी पते पर इसे हल करता है, लेकिन ब्राउज़र उस URL को भेजता है जिसे आपने HTTP हेडर में एक्सेस करने का प्रयास किया था।
यहाँ एक नमूना शीर्ष लेख है जो मैंने ऑनलाइन पाया, यह देखने के लिए संशोधित किया गया है कि आपने Windows पर फ़ायरफ़ॉक्स का उपयोग किया है और apple.com
पता बार में टाइप किया है:
GET / HTTP/1.1
Host: apple.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
यदि आपका IP पता उपयोग किया जाता है तो हेडर कैसा दिखेगा:
GET / HTTP/1.1
Host: 17.142.160.59
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
इन दोनों को एक सॉकेट पर एक ही आईपी पते पर भेजा जाएगा, लेकिन ब्राउज़र सर्वर को बताता है कि उसने क्या एक्सेस किया है।
क्यों? क्योंकि एक ही आईपी पते वाले वेब सर्वर कई साइटों को होस्ट कर सकते हैं और प्रत्येक के लिए अलग-अलग पृष्ठ दे सकते हैं। यह पता नहीं लगा सकता कि कौन कौन से पेज को आईपी पते से चाहता है क्योंकि वे सभी एक ही हैं - लेकिन यह उन्हें HTTP हेडर द्वारा अलग कर सकता है।