2011-01-14 20 views
6

मान लीजिए मैं दो सत्र कुकीज़ जो दिखता हैअंतर

पहले एक

Name: d58ba4091c622661a0d46f03b412ac8b 
Content: m9ciub2u3ig59638r43uqjb8e6 
Host: www.example.com 
Path:/
Send for: Any type of connection 
Expires:Sunday, February 27, 2011 5:50:18 PM 

और दूसरा एक

Name: test 
Content: kdfssdfb2ufdfjww3436detasd 
Domain: .www.example.com 
Path:/
Send for: Any type of connection 
Expires:Sunday, February 27, 2011 5:50:18 PM 

कि आप देख सकते हैं पहले एक तरह Host parameter और मान और दूसरे में Domain पैरामीटर शामिल है। वे क्या सटीक हैं और उन्हें क्या अंतर है?

धन्यवाद

+0

आप मिल सकती है [ '$ cookie-> setDomain ($ डोमेन)'] (https://github.com/delight-: ऐसी कुकी setcookie() पैरामीटर $ डोमेन कुछ डोमेन पर सेट है बनाई गई है आईएम/पीएचपी-कुकी/ब्लॉब/004cde69ec840e65c15275e09b92ecb1da06f357/src/Cookie.php # L117) उपयोगी है, जैसा कि [इस स्टैंडअलोन लाइब्रेरी] में पाया गया है (https://github.com/delight-im/PHP- कुकी)। यह आपके लिए कुछ सामान्यीकरण प्रयासों को संभालता है। – caw

उत्तर

11

setcookie() function description के लिए टिप्पणियों के अनुसार, अंतर निम्नलिखित है:

  • होस्ट: www.example.com

निर्दिष्ट मेजबान के लिए प्रतिबंधित है, तो यह कुकी जाएगा पूरी तरह से अलग डोमेन, न ही सबडोमेन के लिए न दिखाई दे। इस तरह की कुकी setcookie() पैरामीटर $ डोमेन रिक्त स्ट्रिंग पर सेट है, तो बनाई गई है:

setcookie($name, $value, time()+3600, $path, ""); 
  • डोमेन: .www.example.com

निर्दिष्ट डोमेन के लिए प्रतिबंधित है, तो यह कुकी होगा निर्दिष्ट डोमेन के सबडोमेन (* .www.example.com जैसे सभी डोमेन) के लिए दृश्यमान रहें।

setcookie($name, $value, time()+3600, $path, "www.example.com");