आपके द्वारा पढ़े गए उसी RFC2109 से उद्धरण :
* डोमेन = .foo.com के लिए अनुरोध-होस्ट x.foo.com से एक सेट-कुकी
स्वीकृत होना।
तो के subdomain.example.com
लिए एक कुकी सेट कर सकते हैं .example.com
। अब तक सब ठीक है।
निम्नलिखित नियम लागू कुकी-मानों को चुनने के लिए लागू होते हैं
उन सभी कुकीज़ के बीच जो यूजर एजेंट के पास है।
डोमेन चयन
मूल सर्वर का पूर्ण-योग्य होस्ट नाम डोमेन-मिलान होना चाहिए
कुकी की डोमेन विशेषता
तो क्या हमारे पास एक डोमेन-मैच है?
* एक एफक्यूडीएन स्ट्रिंग है और इसमें एनबी है, जहां एन एक गैर-खाली नाम है
string, B का form है .B ', और B' एक FQDN स्ट्रिंग है। (तो, xycom
डोमेन-मैच .y.com लेकिन y.com नहीं।)
लेकिन अब परिभाषा के अनुसार example.com
डोमेन-मैच नहीं होगा .example.com
। लेकिन www.example.com
(या डोमेन में कोई अन्य "गैर-खाली नाम") होगा। यह RFC , RFC2965 द्वारा प्रचलित सिद्धांत के अनुसार है , जिसने Set-Cookie2
परिचालन पर डोमेन के लिए एक अग्रणी डॉट बनाने के बारे में बातें तय कीं ।
अधिक महत्वपूर्ण, जैसा कि @Tony द्वारा उल्लेख किया गया है, वास्तविक दुनिया है। वास्तविक उपयोगकर्ता एजेंट क्या कर रहे हैं, इसकी एक झलक के लिए देखें
फ़ायरफ़ॉक्स 3 के nsCookieService.cpp
तथा
Chrome की कुकी_monster.cc
वास्तविक साइटों क्या कर रहे हैं में परिप्रेक्ष्य के लिए, के साथ खेल की कोशिश wget
का उपयोग कर --save-cookies
, --load-cookies
और --debug
देखने के लिए क्या हो रहा है।
आपको पता चलेगा कि वास्तव में अधिकांश साइटें Set-Cookie
"होस्ट" मानों के साथ पुराने RFC स्पेक से कुछ संयोजन का उपयोग कर रही हैं , जो कि बिना किसी प्रमुख डॉट (जैसे कि twitter.com करता है) या डोमेन वैल्यू (एक प्रमुख बिंदी के साथ) और पुनर्निर्देशन के बिना है। सर्वर की तरह www.example.com
(जैसे google.com करता है)।