2011-09-08 13 views
40

मेरे पास एक एएसपीनेट एप्लिकेशन है जो उपयोगकर्ता चयनित भाषा को स्टोर करने के लिए कुकी का उपयोग करता है। सबकुछ ठीक काम करता है सिवाय इसके कि जब मैं लोकलहोस्ट पर हूं। 127.0.0.1 द्वारा लोकहोस्ट को प्रतिस्थापित करने से यह फिर से काम करता है ... क्यों?क्रोम लोकहोस्ट कुकी सेट नहीं किया जा रहा है

मैंने फ़ाइल के लिए इच्छित प्रतिबंध देखा: // लेकिन मुझे वास्तव में लोकलहोस्ट के इरादे से प्रतिबंध के लिए कोई संदर्भ नहीं मिल सकता है।

मैं वास्तव में समझ नहीं पा रहा हूं कि एएसपीनेट सत्र (एएसपी.NET_SessionId) और एएसपीनेट फॉर्म प्रमाणीकरण कुकीज़ (एफएसएयूटीएसएसओ) स्थानीयहोस्ट डोमेन के लिए सही ढंग से सेट क्यों हैं लेकिन मेरी कुकीज़ नहीं हैं ... क्यूं कर?!

मैं पहले से ही एक बहुत googled और कुछ भी नहीं काम करता है:

  • केवल Http के लिए क्रोम कमांड लाइन फ़्लैग --enable-फ़ाइल-कुकीज़ [नहीं है WORK]
  • कुकी की स्थापना की स्थापना [नहीं है मामला]
  • सत्र के लिए या ... [कोई प्रभाव नहीं पड़ेगा]
  • रूट (/) पर कुकी पथ को बदलने या कुछ और करने के लिए [कोई फर्क नहीं पड़ता]
एक तिथि करने के लिए समय सीमा समाप्ति बदलने

तो क्या बात है? :)

और एएसपीनेट कुकीज़ क्यों सेट की जा सकती हैं और मेरा नहीं? क्या फर्क पड़ता है?

अंतिम बात यह उल्लेख करने के लिए कि यह आईई पर भी होता है लेकिन एफएफ पर ठीक काम करता है।

धन्यवाद!

एलेक्स

+0

'विकल्प-> हूड के तहत>> गोपनीयता-> सामग्री सेटिंग्स' में कुकी सेटिंग्स क्या हैं? या क्या आपके पास कोई अपवाद है जो स्थानीयहोस्ट पर लागू किया जा रहा है? –

+0

मैंने Google क्रोम सेटिंग्स को छुआ नहीं है। जो आप पूछ रहे हैं वह इस पर सेट है: कुकीज़: स्थानीय डेटा को सेट करने की अनुमति दें (अनुशंसित)। मेरे पास कोई अपवाद सेट भी नहीं है ... किसी भी डिफ़ॉल्ट सेटिंग्स को स्पर्श नहीं किया ... – AlexCode

+3

4 साल बाद, वर्ष 2015 है और यह अभी भी [एक समस्या है] (http://stackoverflow.com/questions/ 28583729/क्रोम does not के-सेट-कुकी-से-प्रतिक्रिया)। – Gaui

उत्तर

24

कुकीज दूसरे स्तर और नीचे के लिए डिज़ाइन किए गए हैं। प्रथम स्तर के डोमेन काम नहीं करेंगे। इसके बजाय आप पता http://127.0.0.1 का उपयोग करना चाहिए (जैसा कि आप का उल्लेख) या आप अपने मेजबान को संपादित कर सकता है जैसे पता 127.0.0.1 करने के लिए एक टीएलडी साथ एक अलग URL मैप करने के लिए फ़ाइल:

yoursite.tld 127.0.0.1 

बस इस आगे शोध किया; यह उत्तर मिला: Cookies on localhost with explicit domain

+5

हाँ तय करें, यह एक तरह का "समाधान" है जो मैंने पाया है, लेकिन अभी भी यह नहीं समझाता है कि अन्य कुकीज़ क्यों काम करती हैं, जैसे कि एएसपीनेट जिन्हें मैं उल्लेख करता हूं। – AlexCode

+0

एएसपी.नेट वाले लोग "सत्र" कुकीज़ हैं। क्रोम स्थानीयहोस्ट के लिए "सत्र" कुकीज़ संग्रहीत करता है, लेकिन "स्थायी" कुकीज़ नहीं। "सत्र" कुकी सेट करने के लिए, बस कुकी पर एक समाप्ति तिथि सेट न करें (या इसे स्पष्ट रूप से डेटटाइम पर सेट करें। MinValue)। जब भी ब्राउजर बंद हो जाता है तो सत्र कुकीज को वास्तव में हटाया जाना चाहिए, लेकिन क्रोम/फ़ायरफ़ॉक्स में "जारी रखें जहां मैंने छोड़ा था" या "आखिरी बार से मेरे टैब खोलें" जैसी सुविधा है जो वास्तव में ब्राउज़र को "सत्र" कुकीज़ पर अनिश्चित काल तक लटका देती है उन्हें हटाने के बजाय। सुरक्षा छेद, एलओएल। – Triynko

1

मुझे क्रोम में एक ही समस्या थी। मेरे पास कुकी थी। सुरक्षित = सच। उस से छुटकारा पाने के लिए localhost के लिए मेरे लिए मुद्दा तय किया।

(था ठीक उसी मुद्दा, FWIW: एफएफ, नहीं आईई या क्रोम में काम किया)

19

स्थानीय होस्ट पर cookie.Domain = null रख दिया और अन्यथा डोमेन नाम का उपयोग करने के लिए प्रयास करें।

+0

यह मेरे लिए स्थानीयहोस्ट पर चल रहा चाल है। मैं अन्य मानकों के साथ संघर्ष कर रहा था लेकिन आपकी टिप काम करती है। धन्यवाद! – elvin

0

वहाँ, एक issue on Chromium open since 2011 यह है कि अगर आप स्पष्ट रूप से के रूप में डोमेन सेट कर रहे हैं 'स्थानीय होस्ट', आप इसे false के रूप में स्थापित करना चाहिए यह काम या उपयोग 127.0.0.1 के रूप में स्थापित करने के लिए डोमेन।

1

मैं क्रोम पर एक मुद्दा जहां भविष्य में 2 सप्ताह के एक समय समाप्ति के साथ एक कुकी सेट नहीं किया जा रहा था - इस प्रमाणन कुकी हुआ (.AspNet.AplicationCookie) तो मुझे लगातार लॉगिन पृष्ठ पर रीडायरेक्ट किया जा रहा था।यह समस्या मैंने कोशिश की अन्य ब्राउज़रों में नहीं हुई थी।

मैं कस्टम कुकीज़ के साथ प्रयोग है कि क्रोम निर्धारित करने के लिए समाप्त हो गया सोचा आज की तारीख थी पहले की तुलना में यह वास्तव में था - तो उदाहरण के लिए मैं एक कुकी है कि आज (2-अप्रैल 2017) 1 साल में समाप्त हो गई में डाल दिया और वास्तव में क्रोम 1-जनवरी-2017 की समाप्ति के लिए इस कुकी को सेट करें! इसके बाद यह समझाया जाएगा कि 2 सप्ताह की समाप्ति वाली कुकी को पहले ही समाप्त कर दिया गया था क्योंकि क्रोम वास्तविक समाप्ति के 3 एमएच को बंद कर रहा था और इस प्रकार इसे पहले से ही समाप्त कर दिया गया था।

क्रोम रीबूट ने इसे ठीक नहीं किया - मैंने इस चरण में पीसी को रीबूट किया और यह 'निश्चित' बग। मुझे यह भी ध्यान रखना चाहिए कि यह केवल localhost के लिए हुआ - प्रतीत होता है कि हर दूसरी साइट ठीक थी।

+0

धन्यवाद मैंने इसे 2h के लिए कुकी आकार और कुछ अन्य चीजों को कम करने की कोशिश करने के लिए डीबग किया लेकिन कंप्यूटर को पुनरारंभ करने से समस्या हल हो गई! – Peter

1

मुझे पता है कि यह मूर्खतापूर्ण हो सकता है लेकिन यह मेरे साथ हुआ जहां मैंने एएसपीनेट एमवीसी एप्लीकेशन लिया जहां मैं उन्हें स्थानीय रूप से काम नहीं कर सका। अंत में, एक और डेवलपर ने web.config में एक प्रविष्टि की ओर इशारा किया जो हाल ही में जोड़ा गया था।

<httpCookies httpOnlyCookies="true" requireSSL="true" /> 

आवश्यकताएसएस को स्थानीय रूप से "झूठी" पर सेट करना। वातावरण के माध्यम से परिवर्तन लागू करने के लिए याद रखें। मुझे उम्मीद है कि यह मदद करता है।

+0

मेरे लिए बिल्कुल एक ही मुद्दा है, लेकिन मुझे यह हल करने के बाद मिला :) – endo64

संबंधित मुद्दे